Git遠端庫版本回滾

2021-07-26 19:47:11 字數 945 閱讀 6992

git**庫回滾: 指的是將**庫某分支退回到以前的某個commit id

【本地**庫回滾】:

git reset --hard commit-id :回滾到commit-id,講commit-id之後提交的commit都去除

git reset --hard head~3:將最近3次的提交回滾

【遠端**庫回滾】:

這個是重點要說的內容,過程比本地回滾要複雜

應用場景:自動部署系統發布後發現問題,需要回滾到某乙個commit,再重新發布

原理:先將本地分支退回到某個commit,刪除遠端分支,再重新push本地分支

操作步驟:

1、git checkout the_branch

2、git pull

3、git branch the_branch_backup //備份一下這個分支當前的情況

4、git reset --hard the_commit_id //把the_branch本地回滾到the_commit_id

5、git push origin :the_branch //刪除遠端 the_branch

6、git push origin the_branch //用回滾後的本地分支重新建立遠端分支

7、git push origin :the_branch_backup //如果前面都成功了,刪除這個備份分支

如果使用了gerrit做遠端**中心庫和code review平台,需要確保操作git的使用者具備分支的push許可權,並且選擇了 force push選項(在push許可權設定裡有這個選項)

另外,gerrit中心庫是個bare庫,將head預設指向了master,因此master分支是不能進行刪除操作的,最好不要選擇刪除master分支的策略,換用其他分支。如果一定要這樣做,可以考慮到gerrit伺服器上修改head指標。。。不建議這樣搞

參考資料:

from: 

git本地版本回滾與遠端版本回滾

1 檢視git 提交 git log 該命令顯示從最近到最遠的提交日誌。hard選項,表示徹底將工作區 暫存區和版本庫記錄恢復到指定的版本庫 遠端分支版本回退的方法 1.首先要回退本地分支 git reset hard commitid 2 強制推送到遠端分支 git push f origin m...

GIT 遠端倉庫版本回滾

開發中,發現有錯誤版本提交帶遠端分支master,怎麼處理?1 簡介 最近在使用git時遇到了遠端分支需要版本回滾的情況,於是做了一下研究,寫下這篇部落格。2 問題 如果提交了乙個錯誤的版本,怎麼回退版本?如果提交了乙個錯誤的版本到遠端分支,怎麼回退遠端分支版本?如果提交了乙個錯誤的版本到公共遠端分...

git 版本回滾

1 轉殖 到本地 git clone 2 git log 檢視所有的歷史版本 commit f0f1efe5837ed4bf6209c6152562902565e49f21 author date fri nov 3 01 26 38 2017 0800d commit 476791f298a14f...