如何在我的工作副本中排除非指数的变更?


当前回答

git checkout .

这将拒绝对分支的任何未经订购的变更,如果发生任何变更,它不会重新设置它,这是方便的,当你做了一些变更并决定你不想要它们,因为某种原因,你没有承诺这些变更,它实际上只是重新检查分支,并拒绝任何当前未经订购的变更。

(必須在應用程式的根或家指,以便工作)

其他回答

要做永久漏洞: git reset --hard

保存更改以后: git stash

要删除未完成的更改,我试图“吉特恢复”我被吉特告诉,但它只是没有工作。

git revert --hard

它的 Git Help 完美地解释了这一点:

--hard 恢复指数和工作树. 在工作树中跟踪文件的任何变化,因为它们被删除. 在写任何跟踪文件的方式,任何未跟踪文件或目录都被删除。

PS:我使用 git 版本 2.35.3.windows.1. 我认为这里的一些答案使问题过于复杂。

我最喜欢的是

git checkout -p

这使你能够选择性地逆转碎片。

也看:

git add -p

git checkout -f


男子Git-Checkout:

F、 - 力量

在切换分支时,即使指数或工作树与头部不同,也会进行进展,用来消除当地的变化。

在从指数中查看路径时,不要错过未嵌入的输入;相反,未嵌入的输入被忽略。

git clean -df

清理工作树,重复删除不受版本控制的文件,从当前目录开始。

D:除了未追踪的文件之外,还可以删除未追踪的目录

-f: 力量(可能不需要根据 clean.requireForce 设置)

Run git help clean 查看手册