在上次提交git后重置所有更改

我怎样才能撤消上次提交后对目录所做的每一项更改,包括删除添加的文件,重置已修改的文件以及添加回删除的文件?

首先重置更改

git reset HEAD --hard 

然后清理一切未跟踪。 如果您想保留由于.gitignore而未被追踪的文件,请小心使用此命令。

 git clean -fd 

我怎样才能撤消上次提交后对目录所做的每一项更改 ,包括删除添加的文件,重置已修改的文件以及添加回删除的文件?

  1. 您可以使用以下命令撤销对跟踪文件的更改:

     git reset HEAD --hard 
  2. 您可以删除未跟踪的文件:

     git clean -f 
  3. 您可以使用以下命令删除未跟踪的文件和目录:

     git clean -fd 

    但是不能撤销对未跟踪文件的更改

  4. 您可以删除忽略和未跟踪的文件和目录

     git clean -fdx 

    但是您无法撤消对忽略文件的更改

您可以将clean.requireForce设置为false

 git config --global --add clean.requireForce false 

避免在使用git clean时使用-f (– -f )。