git rollback代码都没了_git回滚线上代码
由于之前自己推代碼的時候操作失誤,才push代碼的時候沒有push到dev分支,而是push到了本地master同名分支的線上master分支,覆蓋掉了線上在用的代碼。在搜索解決辦法的時候,發現網上給的信息大多不夠全,且很多無用。所以在回滾成功之后,寫一下關于回滾的文章。
1.如果沒有push上去,可以用git reset 本地回滾到之前的代碼。
git log查看版本號,然后在用git reset + 版本號回滾。
2.如果push上去了,已經覆蓋了線上的代碼,就需要先用git revert + 版本號 或者 HEAD(回到上一個push的版本),將線上的代碼回滾
用git push -u origin master:master(可以不寫,默認與分支相同) -f 強制提交。如果沒有-f gitlab會拒絕你的操作。
3.git revert 和 git reset 的區別
(1)git reset命令
1.git reset –mixed + 版本號
暫存區(add/index區)和提交區(commit區)會回退到某個版本,但代碼不改變。
2.git reset –soft + 版本號
提交區(commit區)會回退到某個版本,暫存區(add/index區)不會回退,代碼不改變。
3.git reset –hard + 版本號
暫存區(add/index區)和提交區(commit區)會回退到某個版本,代碼會改變。(推薦)
(2)git revert命令
git revert + 版本號
遠程master和本地master都會回退到某個版本。暫存區(add/index區)和提交區(commit區)會回退到某個版本,代碼會改變。
原文:https://www.cnblogs.com/kakawith/p/9550208.html
總結
以上是生活随笔為你收集整理的git rollback代码都没了_git回滚线上代码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 即热式热水器最大危害(使用即热式热水器有
- 下一篇: java 工程新建ivy文件_Hadoo