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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值