Git基础系列:撤销&回滚

1 撤销commit,不撤销add,不删除工作空间改动代码

撤销一次commit:HEAD~1

git reset --soft HEAD~1

2 撤销commit,撤销add,删除工作空间改动代码

git reset --hard HEAD~1

3 修改commit注释

git commit --amend

4 回滚

执行了git reset --hard HEAD,回滚代码。

4.1 回滚commit

执行了add和commit,可回滚。

  • 查看log
git reflog

图4.1 提交log

图4.1中,HEAD@{n}为各个执行的命令,如果有需要回滚的,可以使用reset --hard HEAD@{n}回滚某个操作前的代码。

  • 回滚某次commit
git reset --hard HEAD@{0}

4.2 回滚add(没有进行commit)

执行了add,没有commit,可回滚。

git fsck --lost-found

目录:/.git/lost-found/other有add的文件,将other文件夹中的文件放置到文本编辑器中,将需要的代码复制到原路径下即可。

4.3 没有add,没有commit

无法回滚找回。


【参考文献】
[1]https://www.cnblogs.com/lfxiao/p/9378763.html
[2]https://blog.csdn.net/wangyueshu/article/details/90919019
[3]https://blog.csdn.net/SpringCloudLner/article/details/99293430?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase

你可能感兴趣的:(#,Git,回滚,撤销,reset)