git本地提交,推送到远程之后想要撤回的一些常见情况

Git:常见问题

1.soft mixed hard 的区别?

1. soft:移动本地库head 指针
结果:回滚后,仅仅是把本地库的指针移动了,而暂存区和你本地的代码是没有做任何改变的,而你上次改动已提交committed到本地库的代码显示是绿色即未提交
2. mixed: 移动本地库head指针->重置暂存区
结果:回滚后,不仅移动了本地库的指针,同时暂存区的东西也没了,意思就是上次添加到暂存区的文件没了
3. hard: 移动本地库head 指针->重置暂存区->重置工作区
结果:回滚后,本地代码就是你回退版本的代码

2.add之后如何撤销,commit 如何撤销 ,push之后如何撤销?

add之后使用rollback
commit之后使用,git reset --hard commitId
push之后使用,git reset --hard commitId  -->  git push -f

3.reset和revert的区别

区别:1、reset是彻底回退到指定的commit版本,该commit后的所有commit都将被清除;而revert仅是撤销指定commit的修改,并不影响后续的commit。2、reset执行后不会产生记录,revert执行后会产生记录。

reset,使用方法:git reset --hard commit ,commit是提交后产生的id,执行该命令后,代码会完全回退到本次提交时的状态,工作暂存区以及本次提交后面的提交内容将会被完全清除,包括提交记录!
执行上面的命令之后,HEAD已经指向了所要退回的分支,但你刷新后台时,发现并没有什么变化,这是因为我们还需要执行一下push,但这里需要注意的是,因为本地代码回到了旧版本,但远程仓库是新版本和本地不一致,所以你在用git push时会报错,这里我们需要使用强制提交,git push -f

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值