其他分享
首页 > 其他分享> > git reset 回退版本

git reset 回退版本

作者:互联网

-先模拟提交过程,一共提交四次,每次都向文本里写一个新数

# 向文本中写入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,回退
来源: https://www.cnblogs.com/wutou/p/16630534.html