1.分离HEAD。HEAD 总是指向当前分支上最近一次提交记录。 所谓分离HEAD,就是让HEAD直接指向某一条具体的提交记录,而不是默认的通过分支名指向当前分支的最近一条提交记录。

2.相对引用^。如 git checkout HEAD^ 表示移动到当前HEAD指向提交节点的父节点。

3.相对引用~。如 git checkout HEAD~3 表示移动到当前HEAD指向提交节点的上三个祖先节点。

(以上三个指令都是让HEAD的指向跳来跳去,那这有什么用呢?有的,它最大的作用在于移动分支,也就是篡改提交树,当然并不涉及远程分支)

4.git branch -f master HEAD~3: 表示强制将master分支指向当前HEAD所指提交节点往上的第三级父提交,但是我并不接受这种做法,因为胡乱地修改分支指向会使得提交树产生混乱。

4.撤销本地提交,git reset HEAD~2 :表示撤销提交一直到到当前HEAD指向提交节点往上的第二级提交节点。

5.撤销远程提交,也就是我们常说的:版本回退。git revert HEAD :表示撤销当前HEAD指向的提交记录,注意:这跟reset参数的用法是不一样的。revert参数指的是需要被舍弃的某一个提交记录。它会产生一个新的提交记录,或者叫“撤销记录”。用于保证提交树的走向一直是单向的。

(revert之后再push到远程,就可以看到版本已经回退了)

最新文章

  1. Put your application in production
  2. iis7下配置php出现404.17错误的解决办法
  3. Dapper学习 - Dapper的基本用法(二) - 存储过程/函数
  4. Scalaz(4)- typeclass:标准类型-Equal,Order,Show,Enum
  5. 同样有缓冲区,为什么bufferedReader输入流不需要清空缓冲区?而bufferedWriter需要清空缓冲区呢?
  6. ffmpeg mp3 to m3u8
  7. C++经典编程题#2:大象喝水
  8. java版的YUI3 combine服务-Combo Handler
  9. 【转载】c/c++在windows下获取时间和计算时间差的几种方法总结
  10. java注解Annotation
  11. shell小技巧
  12. 在Spring Boot中输出REST资源
  13. SpringCloud的分布式配置及消息总线
  14. Spring Boot学习总结四
  15. UITextField属性及方法说明
  16. Maya闪退
  17. oracle 12.2 linux/solaris正式发布
  18. What is API Level?
  19. C# volatile 关键字
  20. python 之datetime库学习

热门文章

  1. [ASP.NET Core 3框架揭秘] 依赖注入[7]:服务消费
  2. global、nonlocal关键字
  3. 【STM32H7教程】第33章 STM32H7的定时器应用之TIM1-TIM17的中断实现
  4. Leetcode题解 - 链表简单部分题目代码+思路(21、83、203、206、24、19、876)
  5. jQuery实现回车触发登录按钮的功能
  6. Java 程序员最喜欢使用的日常工具
  7. IDEA的Maven设置阿里镜像
  8. centos7上安装jdk1.8
  9. JWT基础知识
  10. 我应该怎么学习SAP?