在 centOS 上设置 Git 忽略跟踪的目录文件
共享的忽略设置方式
本地仓库根目录,创建.gitignore文件,并编辑正则匹配需要忽略的文件或目录。.gitignore文件需要上传到仓库,同时会影响到他人,共享忽略设置。
注意:.gitignore只能忽略那些原来没有被跟踪 track 的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。添加忽略之后,已经提交到版本库中的文件是无法忽略的。只能 clone 到本地,删除后,再进行忽略。
解决方法就是先把本地缓存删除(改变成未 track 状态),然后再提交:
git rm -r --cached . git add . git commit -m 'update .gitignore'
非共享的忽略设置
编辑.git/info/exclude文件,设置忽略方式同.gitignore,都是通过正则匹配。但是不同的是.gitignore这个文件本身会提交到版本库中去。用来保存的是公共的需要排除的文件。而.git/info/exclude这里设置的则是你自己本地需要排除的文件。他不会影响到其他人。也不会提交到版本库中去。
若需设置忽略的文件已经处于被跟踪状态,可以通过 git 命令设置忽略:
# 查看项目根目录 git rev-parse --show-toplevel
# 设置忽略跟踪 git update-index --assume-unchanged /path/file # 恢复跟踪 git update-index --no-assume-unchanged /path/file