git reset --hard commit_id(可用 git log –oneline 檢視)
git push origin head --force #遠端提交回退
下面的命令也可以實現遠端版本回退
git reset --hard head~1
git push --force
git reset命令後面是需要加2種引數的:
」–hard」
和」–soft」
。
這條命令預設情況下是」–soft」。執行上述命令時,這該條commit號之 後(時間作為參考點)的所有commit的修改都會退回到git緩衝區中。
使用git status命令可以在緩衝區中看到這些修改。而如果加上」–hard」引數,則緩衝區中不會儲存這些修改,git會直接丟棄這部分內容。
但需要注意的一 個問題是:由於這樣的重置是直接在本地的修改,無法提交到遠端伺服器,如果直接丟棄的內容已經被推到遠端伺服器上了,則會造成本地和伺服器無法同步的問題。
即git reset –hard只能針對本地操作,不能針對遠端伺服器進行同樣操作。如果從本地刪掉的內容沒有推到伺服器上,則不會有***;如果被推到伺服器,則下次本地和 伺服器進行同步時,這部分刪掉的內容仍然會回來。
而上面注意中提到的問題則可以很好的被git revert 命令解決。
git revert + commit 號
該命令撤銷對某個commit的提交,這一撤銷動作會作為乙個新的修改儲存起來,這樣,當你和伺服器同步時,就不會產生什麼***。
git本地ben遠端分支 git本地及遠端分支回退
1.git本地版本回退 git reset hard commit id 可用 git log oneline 檢視 2.git遠端版本回退 git push origin head force 遠端提交回退 下面的命令也可以實現遠端版本回退 git reset hard head 1 git pu...
git刪除本地及遠端分支
1.刪除本地分支 git branch d branchname2.刪除遠端分支 方法一 將刪除的本地分支推到遠端 要刪除的遠端分支在本地有對映 git push origin branchname 方法二 直接刪除遠端分支 要刪除的遠端分支不在本地 git push origin delete b...
git批量刪除本地分支及遠端分支
git branch grep branchname xargs git branch d git branch r grep branchname sed s origin g xargs i git push origin 批量刪除本地分支 批量刪除遠端分支 沒加 sed s origin g ...