我如何从当前工作树中删除未跟踪的本地文件 ?
当前回答
如果需要从特定的子目录中删除未跟踪的文件,
git clean -f {dir_path}
并合并删除未跟踪的 dir/ file 和被忽略的文件 。
git clean -fxd {dir_path}
在此之后, 您将只对文件进行修改git status
.
其他回答
如果没有其他效果, 只需删除“ git status” 命令中列出的所有更改即可使用以下组合 :
git add -A && git commit -m temp && git reset --hard HEAD^
这将第一阶段 您的所有更改, 然后创建一个临时承诺, 然后丢弃它 。
删除此 repo + 子模块中的所有额外文件夹和文件
这让你和新克隆人处于同样的状态
git clean -ffdx
删除此回调中的全部额外文件夹和文件, 但不删除子模块
git clean -fdx
删除额外的文件夹, 但不包括文件( 如: 构建或日志文件夹) 。
git clean -fd
删除额外文件夹 + 忽略的文件(但不是新添加的文件)
如果文件没有被忽略, 还没有被检查, 那么它会留下来 。 请注意首都 X 。
git clean -fdX
新的互动模式
git clean
使用使用git clean -f -d
以确保目录目录目录目录也删除。
不要删除任何东西, 只显示会做什么。
git clean -n
或
git clean --dry-run
除未跟踪的文件外,删除未跟踪的目录。如果一个未跟踪的目录由不同的 Git 仓库管理,则默认不会删除。使用该目录。
-f
如果您真的想要删除此目录, 选项将两次 。git clean -fd
然后您可以检查您的文件是否真的已删除git status
.
我们可以使用下面的 git 评论, 很容易地从当前 git 工作树中删除本地的未跟踪文件 。
git reset [--soft | --mixed [-N] | --hard | --merge | --keep] [-q] [<commit>]
示例:
git reset --hard HEAD
链接 :
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添加?
- Rubymine:如何让Git忽略Rubymine创建的.idea文件
- Gitignore二进制文件,没有扩展名
- Git隐藏错误:Git隐藏弹出并最终与合并冲突
- 了解Git和GitHub的基础知识
- 没有。Git目录的Git克隆
- 在GitHub上有一个公共回购的私人分支?
- Git与Mercurial仓库的互操作性
- 忽略git中修改(但未提交)的文件?
- “git restore”命令是什么?“git restore”和“git reset”之间有什么区别?
- Git合并与强制覆盖
- Git拉另一个分支
- 在Bash命令提示符上添加git分支
- 如何更改Git日志日期格式