我如何从当前工作树中删除未跟踪的本地文件 ?
当前回答
OK,OK, OK, OK, OK, OK, OK, OK, OK,OK, OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,OK,删除删除未跟踪的自定义文件及文件夹容易使用git
在命令行中,按这样做:
git clean -fd
双检查在这样做之前, 它会删除文件和文件夹, 而不创建任何历史...
在本案中-f
代表武力和-d
代表目录...
所以,如果只删除文件,您可以使用-f
仅 :
git clean -f
如果您想要删除删除(目录) 和文件, 您只能删除未跟踪的目录和文件 :
git clean -fd
还有,你也可以用-x
添加被 git 忽略的文件。 如果您想要删除所有文件, 这将很有帮助 。
并添加-i
git 请求您逐个删除文件的许可 。
如果您不确定并想要先检查事项,请添加-n
旗帜。
使用使用-q
如果您不想在成功删除后看到任何报告。
我还创造了下面的图像 让它更令人难忘 尤其是我见过很多人混淆-f
有时是用来清理文件夹或把它混为一谈的!
其他回答
在实际删除之前先知道要删除的内容:
git clean -d -n
它将产生类似的东西:
将删除样本. txt
删除上一个命令输出中列出的所有内容 :
git clean -d -f
它将产生类似的东西:
删除样本. txt
要删除未跟踪的文件, 您应该首先使用命令查看将受到清理影响的文件
git clean -fdn
这将显示要删除的文件列表。 现在要实际删除那些使用此命令的文件 :
git clean -fd
我喜欢git stash push -u
因为你可以用git stash pop
.
我还找到了一种方法 在藏物中显示未追踪的文件(例如:git show stash@{0}^3
) https://stackoverflow.com/a/12681856/338986
内容2:git stash save
将作有利于push
谢谢 @timp-wolf.
我刚刚发明和尝试的这种情形的救生衣(非常有效):
git add .
git reset --hard HEAD
当心!确定承诺任何所需的更改(甚至在未跟踪的文件中)执行前先执行.
清除 Git 仓库和所有子模块
以下命令将清除当前 git 仓库及其所有子模块的递归 :
(git clean -d -x -f && git submodule foreach --recursive git clean -d -x -f)
推荐文章
- 如何在Visual Studio中删除未推送的外向提交?
- Git在两个不同的文件之间的差异
- 我如何使用vimdiff来解决git合并冲突?
- 如何将更改提交到另一个预先存在的分支
- 为什么使用'git rm'来删除文件而不是'rm'?
- 我如何安装imagemagick与自制?
- 致命:git-write-tree:错误构建树
- Git克隆远程存储库的特定版本
- git隐藏的意图用例是什么?
- 从远程Git存储库检索特定的提交
- 如何配置git bash命令行补全?
- 我如何迫使git拉覆盖每一个拉上的一切?
- 撤销“git add <dir>”?
- 是否可以在不先签出整个存储库的情况下进行稀疏签出?
- 如何移除SSH密钥?