-先模拟提交过程,一共提交四次,每次都向文本里写一个新数
# 向文本中写入0 $ echo 0 >a.t $ git add . #第一次提交到仓库 $ git commit -m '0' # 向文本中写入1 $ echo 1 >a.t $ git add .; #第二次提交到仓库 $ git commit -m '1' # 向文本中写入2 $ echo 2 >a.t $ git add . #第三次提交到仓库 $ git commit -m '2' # 向文本中写入3 $ echo 3 >a.t $ git add . #第四次提交到仓库 $ git commit -m '3' # 显示提交过日志 $ git log
上图,(HEAD -> master) 代表当前所在提交版本的位置
查看文本内容:
HEAD 说明:
HEAD 表示当前版本
HEAD^ 上一个版本
HEAD^^ 上上一个版本
HEAD^^^ 上上上一个版本
以此类推...
可以使用 ~数字表示
HEAD~0 表示当前版本
HEAD~1 上一个版本
HEAD^2 上上一个版本
HEAD^3 上上上一个版本
以此类推...
第一次执行 reset 回退
ubuntu@ubuntuE470:~/test$ git reset HEAD^ 重置后取消暂存的变更: M a.t ubuntu@ubuntuE470:~/test$ cat a.t 3 ubuntu@ubuntuE470:~/test$ git log
-
第二次执行 reset 回退
ubuntu@ubuntuE470:~/test$ git reset HEAD^ 重置后取消暂存的变更: M a.t ubuntu@ubuntuE470:~/test$ cat a.t 3 ubuntu@ubuntuE470:~/test$ git log
-
第三次执行 reset 回退
ubuntu@ubuntuE470:~/test$ git reset HEAD^ 重置后取消暂存的变更: M a.t ubuntu@ubuntuE470:~/test$ cat a.t 3 ubuntu@ubuntuE470:~/test$ git log
-
总结, 版本每次都在回退,但是内容一直是最后一次 commit 的 3
-
参考:
https://www.runoob.com/git/git-reset.html
标签:reset,HEAD,git,ubuntuE470,test,ubuntu,回退 From: https://www.cnblogs.com/wutou/p/16630534.html