协慌网

登录 贡献 社区

如何丢弃 Git 中的未分级更改?

如何放弃工作副本中不在索引中的更改?

答案

对于所有未暂存的文件,请使用:

git checkout -- .

对于特定文件使用:

git checkout path/to/file/to/revert

确保在最后包括期间。

另一种更快捷的方法是:

git stash save --keep-index --include-untracked

如果你不想彻底了解它,你不需要包含--include-untracked

之后,如果您愿意,可以使用git stash drop命令删除该存储。

似乎完整的解决方案是:

git clean -df
git checkout -- .

git clean删除所有未跟踪的文件( 警告 :虽然它不会删除. gitignore 中直接提到的忽略文件, 但它可能会删除驻留在文件夹中的忽略文件 ), git checkout清除所有未分级的更改。