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


当前回答

普通普通git clean命令不会用我的git version 2.9.0.windows.1.

$ git clean -fdx     # doesn't remove untracked files
$ git clean -fdx *   # Append star then it works!

其他回答

git clean -fd删除目录

git clean -fX删除被忽略的文件

git clean -fx删除被忽略和未点名的文件

可将以上所有选项合并使用,作为

git clean -fdXx

检查 git 手册以获得更多帮助

使用git reset HEAD <file>以卸开一个文件

如果您只想删除列表中未被“ gitt status” 跟踪的文件

git stash save -u
git stash drop "stash@{0}"

我更喜欢这个而不是“ 开始清理” , 因为“ 开始清理” 将会删除被忽略的文件, 所以您的下一栋建筑必须重建一切, 您也可能丢失您的 IDE 设置 。

要删除完整更改git 清洁 -f -d

$ git clean -f -d
Removing client/app/helpers/base64.js
Removing files/
Removing package.json.bak

where 
-f is force 
-d is a directory 

git-清洁- 从工作树中移除未跟踪的文件

简要说明摘要

git clean [-d] [-f] [-i] [-n] [-q] [-e <pattern>] [-x | -X] [--] <path>…​

说明说明

通过递归式删除未在版本控制下的文件来清除工作树,从当前目录开始.

通常, 只有 Git 未知的文件才会被删除, 但是如果-x选项被指定,被忽略的文件也会被删除。例如,这可以用于删除所有构建产品。

任何可选的或可选的<path>...给出了参数,只有这些路径受到影响。


步骤1是用-n选项 :

# Print out the list of files and directories which will be removed (dry run)
git clean -n -d

清洁步骤 -注意: 这将删除文件:

# Delete the files from the repository
git clean -f
  • 要删除目录,运行git clean -f -dgit clean -fd
  • 要删除被忽略的文件,运行git clean -f -Xgit clean -fX
  • 要删除被忽略和未丢弃的文件,请运行git clean -f -xgit clean -fx

Note案件差别X后两项命令。

如果(如果)clean.requireForce设置为您的配置中的“ true”(默认),需要指定-f否则不会真的发生任何事。

再次见git-clean需要更多信息的医生。


选项选项选项

-f, --force

如果 Git 配置变量为 clean. requireForce 不被设定为假, 除非给定, 否则 Git 配置变量为 clean.requireForce 将拒绝运行-f, -n-i.

-x

不要使用标准忽略规则,$GIT_DIR/info/exclude,但是仍然使用-e选项。这样可以删除所有未跟踪的文件, 包括构建产品。 这可以用来( 可能与 git 重设结合) 创建一个纯净的工作目录, 以测试一个干净的构建 。

-X

只删除被 Git 忽略的文件。 这也许有助于从零开始重建一切, 但保存手动创建的文件 。

-n, --dry-run

不要删除任何东西, 只显示会做什么。

-d

除未跟踪的文件外,删除未跟踪的目录。如果一个未跟踪的目录由不同的 Git 仓库管理,则默认不会删除。使用-f如果您真的想要删除此目录, 选项将两次 。