日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

Git多个commit合并成一个【中间提交合并 尾部提交合并】

發(fā)布時(shí)間:2024/9/20 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Git多个commit合并成一个【中间提交合并 尾部提交合并】 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

尾部提交合并

將msg B,msg C,msg D這3個(gè)commit合并成1個(gè)commit

1 查看當(dāng)前的提交信息

執(zhí)行命令:git log,可以查看當(dāng)前的一些提交信息 msg A,msg B,msg C,msg D。

2 合并多個(gè)commit

git rebase -i [startpoint] [endpoint] 其中-i的意思是--interactive,即彈出交互式的界面讓用戶編輯完成合并操作, [startpoint] [endpoint]則指定了一個(gè)編輯區(qū)間, 如果不指定[endpoint],則該區(qū)間的終點(diǎn)默認(rèn)是當(dāng)前分支HEAD所指向的commit (注:該區(qū)間指定的是一個(gè)前開(kāi)后閉的區(qū)間)。

git rebase -i commit_id1 commit_id?

這里的commit_id是待合并的多個(gè)commit之前的那個(gè)commit ID,這里也就是msg A的commit ID。

在我這里也就是執(zhí)行命令:git rebase -i d1089921b2714211d1b1652cf0864e2c3f7101a4,

執(zhí)行完命令后就進(jìn)入到vi的編輯模式:

?

?上圖中,pick表示使用當(dāng)前的commit,squash表示這個(gè)commit會(huì)被合并到前一個(gè)commit。

我們這里需要將msg C,msg D合并到msg B中,因?yàn)閙sg B是最靠近msg A的,因此這里選擇將msg C,msg D合并到msg B中。

在鍵盤上敲i鍵進(jìn)入insert模式,然后將msg C,msg D前面的pick修改成squash:

修改完成后,按esc鍵,冒號(hào),輸入wq進(jìn)行保存。

之后會(huì)繼續(xù)跳轉(zhuǎn)到commit message 的編輯界面:

將上圖中畫線的內(nèi)容刪掉或者注釋,然后寫一個(gè)新的commit信息作為這3個(gè)commit的log信息,

我這里的新的信息為:msg B, msg C, msg D,如下圖所示:

然后保存退出,就會(huì)跳轉(zhuǎn)到最初的命令界面:

?Successfully表示操作成功。

3、查看新的commit信息

執(zhí)行命令:git log,查看當(dāng)前的commit信息:成功合成了

?中間提交合并

和尾部的類似,就是不想合并的commit前面寫pick即可!

總結(jié)

以上是生活随笔為你收集整理的Git多个commit合并成一个【中间提交合并 尾部提交合并】的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。