git reset 回退操作记录

push到远程的commit需要回退操作
例如:当前commit节点为D, 之前有ABC三个commit操作

  1. git reset --hard C
    –hard:表示彻底清空当前工作目录和暂存区的内容,当发现提交的D节点存在错误,需要回退到C节点时执行,执行后回退节点之后的所有更改都不会出现到当前工作目录里中和add后的暂存区域;执行reset命令后远程会提示C节点以后所有的commit,此时直接push会报错,提示需要先pull远程分支的commit;如果想覆盖掉D的commit推送,执行git push --force
  2. git reset --soft A
    –soft:表示会在暂存区记录D和A之间的差异,即A到D之间的所有的文件修改都会出现在暂存区域(即add之后的区域),然后直接执行git commit操作来合并A到D之间所有的commit,通常用以完成一个功能后,合并零散的commit记录
  3. git reset --mixed B
    –mixed:是reset的默认参数,回退程度比soft更彻底,表示将B到D之间的所有修改放到工作区间(指当前工作目录);git reset HEAD表示unstaged所有add到暂存区域的文件
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值