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