git clean
2020年2月10日
9:22
本人要使用该指令的地方的主要是在不同分支的切换中,如果存在添加文件的差异,切换分支的时候git就会提示会overwrite文件,这时候就可以使用clean清除这些未跟踪文件,
或者在自己添加了大量的杂乱无章的文件是的时候,后面都不想要这些文件的时候,我也就会使用clean清除这些文件
git clean [-d] [-f] [-i] [-n] [-q] [-e <pattern>] [-x | -X] [--] <path>
-d
不添加-d,默认只删除当前文件目录下文件,不进行子目录文件夹搜索
-n --dry run
空白弹,不删除文件,仅将要删除的文件
-f --force
如果Git 仓库配置requireForce的话,需要添加-f才会进行代删除
git会默认不会删除 .git 目录下的文件。 加 -f -f 双-f才会进行删除.git下面的文件
-q --quite
删除后,不列出删除文件清单,默认列出清单
-i --interactive
提供可选择项
*** Commands ***
1: clean 2: filter by pattern 3: select by numbers
4: ask each 5: quit 6: help
What now> 1
2. 列出所有待删除文件路径,输入过滤pattern模板过滤忽略的文件,输入空返回主命令
3.列出文件,输入数字删除,输入空返回主键命令
4.删除每个文件的时候都会询问是否删除
-e <pattern> --exclude
排除在.gitignore文件忽略的规则,即删除git仓库忽略的规则
-x
小写:运行删除包括.gitignore规则中的文件,连接-e <pattern>可以对-e 中的规则进行忽略不删除,既保留。
-X
大写:只删除.gitgnore中忽略的文件,接-e无效
<path>
删除文件路径,或者模标,可以使用正则表示进行筛选 eg: *.rar
当指令附加上了路径之后,左右的操作都只在符合路径中文件进行操作