自己的分支回滾直接用reset如果你在本地做了錯誤提交,那麼回退版本的方法很簡單公共分支回滾用revert
錯的太遠了直接將**全部刪掉,用正確**替代
先用下面命令找到要回退的版本的commit id:
git reflog
接著回退版本:
gitreset--
hard
obfafd
0bfafd就是你要回退的版本的commit id的前面幾位
如果你的錯誤提交已經推送到自己的遠端分支了,那麼就需要回滾遠端分支了。
首先要回退本地分支:
gitreflog
gitreset--
hard
obfafd
緊接著強制推送到遠端分支:
git push
-f注意:本地分支回滾後,版本將落後遠端分支,必須使用強制推送覆蓋遠端分支,否則無法推送到遠端分支
使用git reset回退公共遠端分支的版本後,需要其他所有人手動用遠端master分支覆蓋本地master分支,顯然,這不是優雅的回退方法,下面我們使用另個乙個命令來回退版本:
git revert head
//撤銷最近一次提交
git revert head~
1//撤銷上上次的提交,注意:數字從0開始
git revert
0ffaacc
//撤銷0ffaacc這次提交
git revert 命令意思是撤銷某次提交。它會產生乙個新的提交,雖然**回退了,但是版本依然是向前的,所以,當你用revert回退之後,所有人pull之後,他們的**也自動的回退了。
但是,要注意以下幾點:
revert 是撤銷一次提交,所以後面的commit id是你需要回滾到的版本的前一次提交git revert 命令的好處就是不會丟掉別人的提交,即使你撤銷後覆蓋了別人的提交,他更新**後,可以在本地用 reset 向前回滾,找到自己的**,然後拉一下分支,再回來合併上去就可以找回被你覆蓋的提交了。使用revert head是撤銷最近的一次提交,如果你最近一次提交是用revert命令產生的,那麼你再執行一次,就相當於撤銷了上次的撤銷操作,換句話說,你連續執行兩次revert head命令,就跟沒執行是一樣的
使用revert head~1 表示撤銷最近2次提交,這個數字是從0開始的,如果你之前撤銷過產生了commi id,那麼也會計算在內的。
如果使用 revert 撤銷的不是最近一次提交,那麼一定會有**衝突,需要你合併**,合併**只需要把當前的**全部去掉,保留之前版本的**就可以了.
git 遠端倉庫版本回退方法
1 問題 如果提交了乙個錯誤的版本,怎麼回退版本?如果提交了乙個錯誤的版本到遠端分支,怎麼回退遠端分支版本?如果提交了乙個錯誤的版本到公共遠端分支,又該怎麼回退版本?3 本地分支版本回退的方法 如果你在本地做了錯誤提交,那麼回退版本的方法很簡單 4 先用下面命令找到要回退的版本的commit id ...
Git 遠端倉庫版本回退方法
最近在使用git時遇到了遠端分支需要版本回滾的情況,於是做了一下研究,寫下這篇部落格。如果提交了乙個錯誤的版本,怎麼回退版本?如果提交了乙個錯誤的版本到遠端分支,怎麼回退遠端分支版本?如果提交了乙個錯誤的版本到公共遠端分支,又該怎麼回退版本?如果你在本地做了錯誤提交,那麼回退版本的方法很簡單 先用下...
Git 遠端倉庫版本回退
多人合作的專案,同事a誤提了錯誤的東西,並把其他同事修改正確的檔案給覆蓋提交了,線上的專案是有問題的。所以需要回退到同事a的誤提交之前的版本。即遠端倉庫版本回退。步驟 1.使用git log命令檢視歷史提交記錄,選擇要回退的版本號,commit後面一串字元,這裡我們選擇回退到commit 8622e...