git reset 与 git revert 命令

在讨论这两个命令之前,先谈论一下git的工作原理。

工作流程

image
  • HEAD为头指针,指向需要提交或修改的区域。
  • Index索引区或缓存区,缓存要提交的文件。
  • Working Directory 为工作目录,最初对文件进行修改的地方。

git reset

  • git reset --soft HEAD~1
    此命令将修改HEAD指向到在这次commit之前,可撤销之前的commit.


    image
  • git reset HEAD~1
    此命令将修改HEAD指向的同时修改index区域,撤销缓存区的文件。


    image
  • git reset --hard HEAD~1
    此命令将修改HEAD指向以及撤销index缓存区文件同时,将Working Directory工作目录的文件撤销重置。


    image

git revert

  • git revert HEAD
    此命令将针对上一次commit进行一次回滚,逆向操作。比如说上一次提交 时在文档中添加“aaaaaa”,使用revert将会使“aaaaaa”删除。并在次进行一次提交。


    image
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Git是目前最流行的版本管理系统,也是最先进的分布式版本控制系统(distributed version cont...
    pro648阅读 5,753评论 1 17
  • 房屋买卖必定会涉及到房产的过户,也只有完成房产的过户,购房者才能真正拥有房屋的产权。那么房产过户的手续有哪些呢?小...
    发785678阅读 215评论 0 0
  • “有人要杀我!” 罗旭一脸愤怒的盯着面前坐着的警察,两个警察互相看了对方一眼,其中一个居然还笑了笑。 “你笑什么...
    殊生阅读 472评论 0 0
  • 宋 · 宋祁 东城渐觉风光好。縠皱波纹迎客棹。绿杨烟外晓寒轻,红杏枝头春意闹。浮生长恨欢娱少。肯爱千金轻一笑。为君...
    雨_莲阅读 352评论 0 0
  • 函数创建的过程: 1)浏览器会为其开辟一个新空间2)把函数中代码当做字符串存储在这个空间中3)把空间的名字(xxf...
    刘晓洋阅读 212评论 0 3