1. 小聲嗶嗶
在複雜的功能開發中,我們可能需要不斷的commit部署到測試環境進行測試,如果不適用git commit -amend命令會導致我們在最終的代碼合入時有許多的commit記錄,一旦後續需要review合入的代碼,將帶來許多的工作量,下面我們使用git rebase來合併我們的commit記錄
2. 正餐開始
使用git log命令查看commit日誌
截圖中有三個commit日誌記錄,假設我們需要將前兩個的commit記錄合併,我們有兩種方式:
- git rebase -i HEAD~2
- git rebase -i df73c8ed10fd80747507239e5d43b77ff55ef008(第三個commit日誌的head)
執行完成後會進入到一個vi頁面
可以看到註釋中有許多參數,我們這邊需要選擇一個作爲我們的主提交記錄,其他的作爲附屬提交,p即爲主commit,s即爲合併入主提交記錄。按下鍵盤【Insert】鍵,修改第二個記錄的pick爲s,如下圖:
修改完成後按鍵盤【Esc】鍵,輸入:wq!即可退出,這時會進入填寫commit信息vi界面,如下圖:
按鍵盤【Insert】鍵,填寫完成commit信息後按鍵盤【Esc】鍵,輸入:wq!即可退出,這時會提示rebase成功
這時再執行git log查看commit日誌會發現之前的兩條記錄已經合併