git-各种撤销操作之reset和revert使用

一、使用场景

在使用git提交代码的过程中,难免会出现失误,而我们补救的方法就是撤销,而常用的撤销无非就两个命令,reset和revert,那他们两个如何使用以及区别是什么呢?

二、使用方法

1.png

先上一张图片。
在提交代码的过程中,无非就是add、commit和push,但不管是哪一步,都有可能出现提交错误的情况,下面分别说一下每一步的撤销操作。

2.1.撤销add之后的撤销

git reset HEAD filename

2.2.撤销commit之后的操作

2.2.1.从本次仓库回退到工作区,保留工作区修改内容,并清空缓存区内容

git reset --mixed   //后面的--mixed可省略,默认就是此方式。

2.2.2.从本地仓库回退到缓存区

git reset --soft

2.2.3.从本地仓库回退到工作区,不保留工作区内容,并清空缓存区内容

git reset --hard   //慎用

2.3.撤销push之后的操作

2.3.1.找到push之前commit提交时对应的commitid,一般只需前六位即可。

git revert commitid

2.3.2.再次push

git push origin branch

2.4.再用一张图总结一下

2.png

4.reset和revert的区别

reset的本质:reset的功能虽然是起到了撤销commit的作用,但实质上它是将HEAD的指向移动了位置。如下图。


3.png

revert:revert是一次新的commit,HEAD会继续向前执行。如下图。


4.png
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • git常用命令 GIT常用命令备忘:http://stormzhang.com/git/2014/01/27/gi...
    新篇章阅读 12,767评论 1 26
  • 其实使用git已经有两年多时间了,但是对Git的概念一直懵懵懂懂,平时常用的命令就那么几个,而且大部分的时候都是直...
    Claire_wu阅读 3,723评论 0 5
  • 一、git简介 git是目前世界上被最广泛使用的现代软件版本管理系统。git本身亦是一个成熟并处于活跃开发状态的开...
    s_在路上阅读 8,175评论 0 10
  • 几个月前她结婚了,我还蒙在鼓里。 1 初次认识她时,我 6 岁,她 4 岁。 具体怎么到她家的我不知道,只记得当时...
    咸鱼怪阅读 3,130评论 5 0
  • 要让事情改变,就得先改变自己;要让事情变得更好,就得先让自己变得更好。 一个人如果不先改正自己的缺点和不足之处,让...
    中华烟酒商贸阅读 1,414评论 0 0

友情链接更多精彩内容