我如何从当前工作树中删除未跟踪的本地文件 ?
当前回答
注意: 第一次浏览到目录并检查您想要清除的分支 。
-i
交互式模式,它将告诉您要删除什么, 您可以从列表中选择一个动作 。
清洁文件 文件仅[不列出文件夹,也不清洗]:
$ git clean -i
清洁文件和文件夹:
$ git clean -d -i
-d
包括目录。
如果您选择了c
从列表中删除。文件/文件夹将被删除,因为文件/文件夹没有被跟踪,还会删除被你弄乱的文件/文件夹。 *
例如:如果您对远程的文件夹进行重组,并将修改拉到本地计算机中。其他人最初创建的文件/文件夹将放在过去的文件夹和您重组的新文件夹中。
其他回答
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 -d
或git clean -fd
- 要删除被忽略的文件,运行
git clean -f -X
或git clean -fX
- 要删除被忽略和未丢弃的文件,请运行
git clean -f -x
或git 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
如果您真的想要删除此目录, 选项将两次 。
我喜欢用git stash
命令,稍后您可以得到隐藏的文件和更改。git clean
这也是一个很好的选择, 但完全取决于您的要求。 这是关于 Git 藏藏和 Git 干净的解释,7.3 Git 工具 - 粉刷和清洁
注意: 第一次浏览到目录并检查您想要清除的分支 。
-i
交互式模式,它将告诉您要删除什么, 您可以从列表中选择一个动作 。
清洁文件 文件仅[不列出文件夹,也不清洗]:
$ git clean -i
清洁文件和文件夹:
$ git clean -d -i
-d
包括目录。
如果您选择了c
从列表中删除。文件/文件夹将被删除,因为文件/文件夹没有被跟踪,还会删除被你弄乱的文件/文件夹。 *
例如:如果您对远程的文件夹进行重组,并将修改拉到本地计算机中。其他人最初创建的文件/文件夹将放在过去的文件夹和您重组的新文件夹中。
如果未跟踪的目录是自有的 git 仓库( 如子模块) , 您需要使用-f
两次:
git clean -d -f -f
git clean -f
将会从当前 git 中删除未跟踪的文件
git clean -fd
当您想要删除目录和文件时, 这将只删除未跟踪的目录和文件
推荐文章
- Bower: ENOGIT Git未安装或不在PATH中
- Bitbucket上的Git:总是要求密码,即使上传了我的公共SSH密钥
- Git别名-多个命令和参数
- 如何添加一个“打开git-bash这里…”上下文菜单到windows资源管理器?
- 是否可以在Git中只提取一个文件?
- 当我做“git diff”的时候,我怎么能得到一个并排的diff ?
- 在git中如何将提交移动到暂存区?
- 如何缩小。git文件夹
- 如何在本地删除分支?
- 找到包含特定提交的合并提交
- Windows上Git文件的权限
- 如何从一个枝头摘到另一个枝头
- 如何获得在两次Git提交之间更改的所有文件的列表?
- 什么是跟踪分支?
- 如何在不稳定的连接上完成一个大项目的git克隆?