我有一个远程 Git 服务器,这是我想要执行的场景:
对于每个错误/功能,我创建一个不同的 Git 分支
我继续使用非官方的 Git 消息在那个 Git 分支中提交我的代码
在顶级存储库中,我们必须使用官方 Git 消息对一个错误进行一次提交
那么如何将我的分支合并到远程分支,以便他们只为我的所有签入获得一次提交(我什至想为此提供提交消息)?
假设您的错误修复分支被调用bugfix,并且您希望将其合并到master:
bugfix
master
git checkout master git merge --squash bugfix git commit
这将从bugfix分支中获取所有提交,将它们压缩为 1 个提交,并将其与您的master分支合并。
说明:
git checkout master
切换到您的master分支。
git merge --squash bugfix
从bugfix分支中获取所有提交并将其分组为与当前分支的 1 次提交。 (没有出现合并提交;您可以在提交之前手动解决冲突)
git commit
从合并的更改创建单个提交。
省略该-m参数可让您在完成提交之前修改包含来自压缩提交的每条消息的草稿提交消息。
-m