忽略没有提交过的文件
在 .gitignore
中添加路径,或者文件名,相信大家都会
忽略提交过的文件
在一些时候,本地需要修改配置或者参数,尤其是路径,没有必要上传到服务器,更不用合并到master,但是第一次clone的时候又需要这个文件存在,所以不能用ignore忽略。
那么,就需要第一次push的时候文件能够传上去,之后每次修改了这个文件再忽略。
用到的指令是:
git update-index --assume-unchanged /dir1/filename #忽略跟踪
git update-index --no-assume-unchanged /dir1/filename #恢复跟踪
但是会遇到出错的情况:
fatal: Unable to mark file
这是因为git有一个特性,在add、commit、push的时候,有些情况是不区分大小写的,所以文件夹修改大小写后可能还会跟踪上,但是在这种情况下,--assume-unchanged
的路径或名字就会出错。
简单地说就是:忽略跟踪时的文件名和路径要严格匹配大小写
参考:
https://blog.csdn.net/zx1323/article/details/79988069
https://my.oschina.net/zmf/blog/501207
https://stackoverflow.com/questions/12920652/git-update-index-assume-unchanged-returns-fatal-unable-to-mark-file