git 版本回退

  因爲操做失誤,須要將代碼進行版本回退,首先在本地倉庫執行了「git reset --hard HEAD^」命令,這樣只會回退本地倉庫的代碼,可是個人代碼以前已經push到了遠程庫中,查看遠程倉庫,發現並無回退,怎麼辦呢,通過實際操做,經過如下方法能夠達到效果:git

  1:首先在本地分支執行「git reset --hard HEAD^」,將版本會退到之前。這裏的「HEAD^」只是回退到上一個版本,若是要回退到更早的版本,能夠經過「git log或git log --pretty=oneline」命令從日誌中查看某次提交的commit id,而後經過「git reset --hard commitId」將代碼回退到指定的版本。日誌

  2:這時候只是本地代碼回退了,如今咱們執行命令「git push origin master」,會出現一個失敗,提示當前分支落後於遠端分支,這是確定的了,由於本地代碼回退了嘛,此時咱們要作的就是強制推送,經過執行命令「git push origin master --force」來實現,而後查看遠程庫,發現遠程版本也已經回退了。it

  注意:強制push的時候要保證本地代碼是最新的,若是其餘小夥伴們在此時進行了遠程推送,那麼會形成代碼的丟失。ast

相關文章
相關標籤/搜索