Step 1. git rebase -i commit-id 會合並這次提交以後全部的提交爲一個提交, 注意這次提交不會包含在內。git
Step 2. 在 vim 編輯器中 會列出全部要合併的提交, 並修改內容, 保存並推出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-2it
pick commit-id-3 commit-msg-3 => s commit-id-3 commit-msg-3stream
step 3. 若是有衝突發生,解決衝突後並git add 而後運行 git rebase --continue, 在彈出的vim編輯器重從新編輯提交message. im
而後保存並退出。 若是要終止此次合併 git rebase --abort , git rebase --edit-todo 從新查看和編輯。推送
Step 4. 若是遠程倉庫有當前分支,則可能會讓咱們進行git pull 操做, 此時執行 git push origin :branch-name 刪除遠程分支, di
git branch --unset-upstream 將本地分支和遠程分支進行解除關聯。vi
Step 5. 最後運行 git push --set-upstream origin branch-name, 將本地合併的提交推送到遠程倉庫。 co