当前位置:   article > 正文

git reset 撤销修改,reset 可以撤销add、commit命令_git reset后可以撤销吗

git reset后可以撤销吗

在撤销之前需要知道几个版本的表示方法:

版本

说明

HEAD

当前版本,也是最后一次提交版本

HEAD~

当前版本的父版本,也是上一次提交版本

commit id

其他版本号(32位的字符串)

本文把撤销分成几个阶段,分别是add之前、add之后(commit之前)、commit之后

撤销add之前的修改:

$git restore <file>...

add 把工作区的代码添加到暂存区restore 是撤销工作区的代码修改

撤销add之后的修改:

如果要保留修改,把代码从暂存区撤回工作区。

$git restore --staged <file>...

$git reset --mixed HEAD <file>...  #可以简写为 $git reset <file>...

如果不保留修改

$git reset --hard HEAD <file>... 或 $git checkout -- <file>...

PS:如果要跨版本撤回,要把HEAD改为版本号

撤销commit 之后的修改:

撤回到add之后,也就是commit之前

$git reset --soft HEAD~

撤回到add之前

$git reset --mixed HEAD~

撤回到修改之前,即恢复了修改的文件。

$git reset --hard HEAD~

以上是按整个HEAD进行reset,如果只是要对某个文件进行reset,只要加上文件的路径。

$git reset --soft HEAD~ <file>...

$git reset --mixed HEAD~ <file>...

$git reset --hard HEAD~ <file>...

PS:如果要跨版本撤回,要把HEAD~改为版本号

撤销本地所有修改常用

撤销所有文件的修改(不算未进入版本控制的文件)

$ git reset --hard #实际是git reset --hard HEAD的简写

删除所有未进入版本控制的文件

$ git clean -fd   

撤消到指定版本

情况一:退回到之前的那一个版本

$git reset --hard HEAD~

情况二:退回到任意版本,版本commitid为 a24s0...

$git reset --hard a24s0

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/721950
推荐阅读
相关标签
  

闽ICP备14008679号