本文主要是介绍【git】git update-index --assume-unchanged(不改动.gitignore实现忽略文件),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 原因分析:
- 添加忽略文件(取消跟踪)的命令:
- 取消忽略文件(恢复跟踪)的命令:
- 查看已经添加了忽略文件(取消跟踪)的命令:
======================
原因分析:
已经维护的项目,文件已经被追踪,gitignore文件不方便修改、没有权限修改等原因,需要通过别的命令去忽略某些文件或者是某些文件夹不进行上传:
注:如果需要修改.gitignore的规则去改变上传的文件,参考博文:.gitignore的使用
添加忽略文件(取消跟踪)的命令:
git update-index --assume-unchanged 【文件路径:文件夹名/文件名】
这里可以忽略文件名,忽略整个文件夹,也可忽略整个文件夹下的某个格式的文件:
git update-index --assume-unchanged 要忽略的文件夹名/文件夹下文件名
git update-index --assume-unchanged 要忽略的文件夹名/
git update-index --assume-unchanged 要忽略的文件夹/*.后缀名
注意:这里要注意的是添加文件夹名的时候,要注意具体到文件夹名之后还要加上 / ,不然会报错!!!!
取消忽略文件(恢复跟踪)的命令:
git update-index –no-assume-unchanged 【文件路径:文件夹名/文件名】
查看已经添加了忽略文件(取消跟踪)的命令:
git ls-files -v //查看所有文件的文件标识,H:正常跟踪文件;h:assume-unchanged文件
文件标识 | 描述 |
---|---|
H | 正常跟踪文件 |
S | skip-worktree文件 |
h | assume-unchanged文件 |
M | unmerged, 未合并 |
R | removed/deleted |
C | modified/changed修改 |
K | to be killed |
? | other,忽略文件 |
如果忽略的文件多了,可以使用以下命令查看忽略列表
git ls-files -v | grep '^h'
提取文件路径,方法如下
git ls-files -v | grep '^h' | awk '{print $2}'
所有被忽略的文件,取消忽略的方法,如下
git ls-files -v | grep '^h' | awk '{print $2}' |xargs git update-index --no-assume-unchanged
这篇关于【git】git update-index --assume-unchanged(不改动.gitignore实现忽略文件)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!