git 合并多个commit

Step 1.  git rebase -i   commit-id    会合并此次提交之后所有的提交为一个提交, 注意此次提交不会包含在内。

Step 2.  在 vim 编辑器中 会列出所有要合并的提交, 并修改内容,  保存并推出vim。

           pick  commit-id-1  commit-msg-1   =>  pick  commit-id-1  commit-msg-1

           pick commit-id-2  commit-msg-2   =>  s commit-id-2  commit-msg-2

           pick commit-id-3  commit-msg-3  =>   s commit-id-3  commit-msg-3

step 3.  如果有冲突发生,解决冲突后并git add 然后运行  git rebase --continue,  在弹出的vim编辑器重重新编辑提交message. 

            然后保存并退出。 如果要终止这次合并 git rebase --abort ,  git rebase --edit-todo 重新查看和编辑。

Step 4. 如果远程仓库有当前分支,则可能会让我们进行git pull 操作, 此时执行 git push origin :branch-name  删除远程分支, 

           git branch --unset-upstream  将本地分支和远程分支进行解除关联。

Step 5. 最后运行 git push --set-upstream origin branch-name,  将本地合并的提交推送到远程仓库。 

原文地址:https://www.cnblogs.com/xiaodi-js/p/11065175.html