撤销的分类

  • 工作区撤销(没有使用git add的情况下)

  • 暂存区撤销(使用了git add,但没有使用git commit的情况下)

工作区撤销

前提:Git工作区下有一个hello.sh的文件,里面的内容是hello one,并且该文件已经commit到了本地仓库中。

  1. 在文件hello.sh

    追加

    内容hello two

  2. 放弃刚才追加的内容git checkout -- hello.sh

放弃工作区的修改有两种方式,一种是重新编辑hello.sh文件并将刚才追加的hello two删掉,另一种是使用命令git checkout -- hello.sh,我们使用的是命令方式。

暂存区撤销

前提:Git工作区下有一个hello.sh的文件,里面的内容是hello one,并且该文件已经commit到了本地仓库中。

  1. 在文件hello.sh

    追加

    内容hello two

  2. 提交到修改到暂存区git add hello.sh

此时恢复有两步,第一步是撤销暂存区的修改,第二步是撤销工作区的修改。

  1. 放弃暂存区的修改git reset HEAD hello.sh(此时hello.sh的内容在暂存区是hello one,但在工作区还是hello two)

'git reset'命令既可以回退版本,也可以把暂存区的修改回退到工作区。当我们用HEAD时,表示最新的版本。```

  1. 放弃工作区的修改git checkout -- hello.sh


友情链接

廖雪峰博客