[原创] git revert和reset的区别

之前对git revert和reset的区别不太清楚,找到了这篇文章,同时通过实验,算是初步搞懂了他们的区别。

这里 写道
http://blog.csdn.net/xiao628945/article/details/8182276

 在这里用自己的话说明一下他们的区别。

git revert 意思是仅仅撤销本次提交,如果是新建文件,那么该文件被删除,且不存在暂存区,之前或之后的commit不受影响。

git reset --soft/hard commitID 撤销的是该次commit之后的所有提交,--hard表示工作区的代码完全替换成commitID这次的代码,且被撤销的代码不存在与暂存区;--soft表示commitID之后的代码会移入暂存区。

 

[2013/06/26]

更新昨天的理解,如果commit已经push到远端,那么在这种情况下,执行git revert commit ID之后push到远端就会撤销commit ID对应的远端提交;而执行git reset commit ID只会降低本地代码的版本,push到远端会提示“代码版本低于远端版本,需要执行git pull...”之类的。所以如果想要撤销远端某此提交,需要执行git revert commit ID 而不是git reset。

[2013/09/20]

git revert如果是自己用的话,完全没有必要使用,这个命令只是git rm **+git cmt -m "balabalabla"的“简写”而已。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值