Git删除新的未跟踪文件

13
这应该很简单,但我找不到正确的答案。 我是 Git 的新手,我将许多新文件(未暂存)添加到我的 Git 树中,我想仅删除它们,而不会删除该目录中的 Git 忽略文件。有什么命令可以做到这一点吗?
git clean -nd

这个命令会删除我所有的 .gitignore 文件吗?


用户交互式操作:git clean -i -fd - bit_cracker007
2个回答

6
针对您的情况,您可以提供一个排除参数:
git clean -nd -e **/.gitignore

然而,通常情况下,我认为推荐采取以下任一方法:

  • 提交您的 .gitignore 文件。如果忽略规则对每个使用该仓库的人都有用,则将其推送到远程是有意义的。 git clean 不会删除已提交的文件。
  • 如果您有个人的忽略规则,请将它们放在 .git/info/exclude 文件中,而不是一个 .gitignore 文件中。(这是来自于 gitignore 文档 的建议)

6

使用 -f 参数:

git clean -f

我想要它删除整个目录,而不仅仅是删除文件的命令。 - Yehuda Schwartz
还有,那个命令会删除我在问题中编写的 .gitignore 文件,我不想这样做。 - Yehuda Schwartz
git clean -f 不会删除 .gitignore 文件中列出的文件。如果它在您的存储库中执行了此操作,则意味着 .gitignore 文件尚未被添加并提交到存储库中。 - Claudio
要删除目录,请运行 git clean -f -dgit clean -fd - elshev

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