如何从当前的Git工作树中删除本地(未跟踪)文件?

8044

我该如何从当前的工作树中删除未被跟踪的本地文件?


102
这个互动的 git 命令速查表 http://www.ndpsoftware.com/git-cheatsheet.html 展示了 git 工作区(使用 "workspace" 而非 "working copy" 可以获得更好的谷歌搜索结果)。 - qneill
36
注意:如果您只想删除部分未跟踪的文件,而不是全部git clean现在有一个交互模式!请参见我对另一个问题的答案:git 1.8.4+ - VonC
在发布新答案之前,请考虑该问题已经有25个以上的答案。确保你的答案提供了现有答案中没有的信息。 - Sazzad Hissain Khan
8
为了让初学者和新手更好理解 Git,可以运行 git status 命令,如果它显示有一个文件未被跟踪,并且你不想将该文件添加到版本库中,你可以直接在文件系统中删除或移动它。这样不会对你的本地仓库或 Git 造成任何损害。你也可以使用 git clean 或以下答案中的某些变体,包括交互式版本,以仅删除选择的文件,但交互模式可能很繁琐。无论你做什么,一定要确保你理解 git clean 将删除哪些内容,或使用 --dry-run 让它告诉你而不会真正执行删除操作。 - LightCC
6
如果这些文件尚未被跟踪,你是否可以在不使用git的情况下删除它们呢?rm files-to-be-deleted - mhatch
Git现在提供交互模式,可以有选择性地删除特定的未跟踪文件,允许您选择要删除哪些文件,同时保留其他文件不受影响。 - Dmitrii Malygin
41个回答

-6

我使用以下步骤:

  1. git status
  2. 复制文件路径
  3. rm <文件路径>

我的项目有很多由巨大的ANT构建脚本创建的生成文件。使用 git clean 会造成混乱。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接