問題描述
我們提交了一些代碼,但是我們不想要要這些代碼,代碼已經(jīng)提交到了遠(yuǎn)程倉庫,這個(gè)時(shí)候,就用到了版本回退。
版本回退主要用到了兩個(gè)git 命令, revert(反轉(zhuǎn)) 和 reset (重置)
reset :我們想把某個(gè)commit點(diǎn)之后的代碼都不要了,那就需要重置,reset。
revert : 如果我們僅僅是想把某個(gè)commit點(diǎn)進(jìn)行重置(也可以叫做反轉(zhuǎn),就是反轉(zhuǎn)成之前的樣子),那么我們需要用到revert,注意revert 和reset有本質(zhì)的區(qū)別
解決問題
當(dāng)然我遇到是需要從某個(gè)點(diǎn)開始,后邊的提交都要重置不需要。所以列出以下處理步驟,revert也差不錯(cuò)!
- git log (找到開始reset的commitId)
- git reset --hard [commitid] (重置commitId)
- git push -f origin [分支](注意這個(gè)時(shí)候如果不強(qiáng)制性提交會(huì)報(bào)錯(cuò),因?yàn)槲覀儽镜豀AED指向的版本比遠(yuǎn)程的老, -f 即為強(qiáng)制push參數(shù))
問題解決。