2019年5月2日 星期四

程式開發的版本控制- Git 合併提交rebase


之前提到程式開發的版本控制- Git 應用篇,

Git的功能強大可不是只有這些,

今天就來介紹一個

程式開發的版本控制- Git 合併提交rebase


首先到命令列打上

git log

系統會列出commit的紀錄,

若今天想把最後的三個紀錄合併為一個提交commit時,

就需要利用

git   rebase -i   'commit 紀錄'

或者

git   rebase -i   HEAD~~~

來進行

系統會列出這段期間的所有commit,

底下範例中有三個提交



各個紀錄前方系統預設帶入pick,

將最後兩個commit紀錄前方的pick改為squash,

squash在此的意義為

採用此commit並將其合併到上一個commit中,

也就是說此commit所做的任何改變都會被合併到上一個commit中



編輯完畢之後,



ctrl  +  x

離開,

系統會出現確認視窗,

選擇Y之後離開


Git就會自動將選定的commit所做的變更加到第一個commit中,



如果遇到衝突,

在解決衝突之後,

執行

git   rebase   --continue

就能繼續未完成的rebase工作


接著執行

git   push --force

強制上傳到server上即可,




如果不想git紀錄太過凌亂,

可透過合併提交將一個或者數個commit合併

沒有留言: