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


当前回答

我很惊讶以前没有人提到这一点:

git clean -i

它是互动的,你会得到一个快速的概述,什么将被删除,为您提供包含 / 排除受影响的文件的可能性。

你必須在 -d 如果你也想照顧空的文件夾。

git iclean

说到这一点,对互动命令的额外持有可能令人兴奋的经验丰富的用户,如今我只使用已经提到的 git clean -fd

其他回答

git-clean 是你正在寻找的,它被用来从工作树中删除未追踪的文件。

我们可以轻松地从当前 git 工作树中删除本地未追踪的文件,使用下面的 git 评论。

git reset [--soft | --mixed [-N] | --hard | --merge | --keep] [-q] [<commit>]

例子:

git reset --hard HEAD

左:

https://git-scm.com/docs/git-reset 如何使用‘git reset --hard HEAD’ 返回以前的承诺? 恢复本地存储分支 就像远程存储分支 HEAD https://jwiegley.github.io/git-from-the-bottom-up/3-Reset/4-doing-a-hard-reset.html

git-clean - 从工作树中删除未追踪的文件

用户互动方法:

git clean -i -fd

Remove .classpath [y/N]? N
Remove .gitignore [y/N]? N
Remove .project [y/N]? N
Remove .settings/ [y/N]? N
Remove src/com/arsdumpgenerator/inspector/ [y/N]? y
Remove src/com/arsdumpgenerator/manifest/ [y/N]? y
Remove src/com/arsdumpgenerator/s3/ [y/N]? y
Remove tst/com/arsdumpgenerator/manifest/ [y/N]? y
Remove tst/com/arsdumpgenerator/s3/ [y/N]? y

-i for interactive -f for force -d for directory -x for ignored files(添加必要时) 注意: 添加 -n 或 -dry-run 只需检查它会做什么。

git-clean - 从工作树中删除未追踪的文件 同步 git clean [-d] [-f] [-i] [-n] [-q] [-e <pattern>] [-x♰ -X] [--] <path>... 描述 通过从当前目录开始,不受版本控制的文件重新删除工作树。


# 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

注意后两个命令的 X 中的案例差异。