git 合并commit操作

0x00 場景

已經(jīng)提交到倉庫的代碼,但是想合并某幾次commit操作。

0x01 命令

命令格式:git rebase -i xxx

xxx代表從哪次commit開始合并,合并會列出xxx之前的commit,通過改變這些commit的狀態(tài)完成合并。

1、可以通過git log 查看commitId,  例如9e4509b70594f5f2847ad5a5894f6ca3fb1cf5d3

2、可以用HEAD表示。HEAD^的意思是最近一次commit,也可以寫成HEAD~1,HEAD~2則表示倒數(shù)第二個commit。

例如:
git rebase -i HEAD~2      表示合并當(dāng)前commit和上一個commit

git rebase -i 9e4509b70594f5f2847ad5a5894f6ca3fb1cf5d3   
表示 合并9e4509b70594f5f2847ad5a5894f6ca3fb1cf5d3之前的commit(不包含此次commit)


0x02 場景

場景1: 合并剛剛提交的n個commit

1、執(zhí)行g(shù)it rebase -i HEAD~2,執(zhí)行后會進(jìn)入vim編輯器,編輯器中會出現(xiàn)兩次commit的信息。


image.png

2、合并
把要合并的commit全部改為s,wq保存退出。

3、修改合并后的comment
此時會彈出vim編輯器,是合并后的幾次commit信息,修改后wq保存退出。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容