本文內容搜集於網絡,僅供本人學習使用。
1.本地分支版本回退的方法
如果在本地做了錯誤提交,回退版本的方法為:
a.使用git reflog命令查看歷史提交記錄的commit id
b.使用git reset --hard commit_id,commit_id為你要回退版本的commit id的前幾位
2.自己的遠程分支版本回退的方法
a.使用git reflog命令查看歷史提交記錄的commit id
b.使用git reset --hard commit_id回退本地分支,commit_id為你要回退版本的commit id的前幾位
c.使用git push -f強制推送到遠程分支
3.公共遠程分支版本回退的方法
a.使用git reflog命令查看歷史提交記錄的commit id
b.使用git revert commit_id或者git revert HEAD~0/1/2指令撤銷最近的提交
c.revert合並代碼,主要是去掉新代碼,解決沖突;如果沒有沖突,使用使用git push -f強制推送到遠程分支
4.沒有辦法的辦法
a.從頭再來,刪倉重建
注意:
1.使用git reflog命令后,如果記錄很長,可以在大寫鎖定狀態下輸入一次'Q'或者兩次'Z'退出git log和git reflog狀態
2.git revert指令注意事項
a.revert是撤銷一次提交,所以commit id是你要回滾到的版本的前一次提交
b.使用revert HEAD是撤銷最近的一次提交,如果你最近一次提交是用revert命令產生的,那么再執行一次就相當於撤銷了上次的撤銷操作,即連續兩次執行revert HEAD命令,相當於沒有執行
c.使用revert HEAD~1表示撤銷最近2次提交,后面的數字是從0開始的,即revert HEAD~n撤銷n+1次提交
d.如果使用revert撤銷的不是最近一次提交,那么一定會有代碼沖突,需要合並代碼,合並代碼只需要把當前的代碼全部取消,保留之前版本的代碼即可。
