????????如果您在 Git 中合并了分支,但是后來(lái)發(fā)現(xiàn)合并后的代碼有問(wèn)題,需要撤銷合并并恢復(fù)到合并之前的狀態(tài),可以使用以下命令。
1、方法一: 【使用revert命令】
在子分支上提交代碼,在遠(yuǎn)程廠庫(kù)將子分支代碼已經(jīng)合并到了一個(gè)主分支上,操作流程如下:
????????在本地電腦上切換到已經(jīng)合并的分支上,更新最新的代碼,然后對(duì)剛才子分支提交的記錄進(jìn)行g(shù)it revert操作,然后再重新提交當(dāng)前主分支的代碼,就可以取消之前子分支已經(jīng)合并的代碼。
注意:使用revert命令會(huì)多出一次提交記錄。
2、方法二: 【log】
首先,使用 git log 命令查看提交歷史,找到合并之前的提交 ID。
然后,使用 git reset 命令將當(dāng)前分支回退到合并之前的狀態(tài),命令格式如下:
git reset --hard <commit-id>
其中,<commit-id> 是合并之前的提交 ID。
注意:不需要再使用commit命令提交保存代碼!
最后,使用 git push 命令將本地分支的修改推送到遠(yuǎn)程倉(cāng)庫(kù)中,命令格式如下:
git push -f
????????其中,-f 參數(shù)表示強(qiáng)制推送,因?yàn)槭褂昧?git reset 命令回退分支,會(huì)導(dǎo)致分支歷史記錄被修改,需要強(qiáng)制推送才能更新遠(yuǎn)程分支。
需要注意的是,撤銷合并后會(huì)丟失合并后的修改,如果需要保留這些修改,可以使用其他方法進(jìn)行修復(fù)。
注意:使用上述命令方法不會(huì)多出一次提交記錄,也沒(méi)有之前代碼合并的記錄。
疑問(wèn):述操作在哪個(gè)分支上進(jìn)行操作呢?文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-534576.html
? ? ? ? 這個(gè)操作是在合并后的分支上進(jìn)行的,也就是說(shuō),如果您在 A 分支上合并了 B 分支,但是合并后發(fā)現(xiàn)有問(wèn)題需要撤銷合并,那么這個(gè)操作就是在 A 分支上進(jìn)行的。具體來(lái)說(shuō),您需要在 A 分支上使用 git reset 命令將 A 分支回退到合并之前的狀態(tài)。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-534576.html
到了這里,關(guān)于git撤銷分支合并的代碼的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!