Git忽略已经commit的文件


.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。

方式一

  1. git rm --cached logs/xx.log
  2. 然后更新 .gitignore 忽略掉目标文件,
  3. git commit -m "We really don't want Git to track this anymore!"

方式二

每个clone下来的仓库中手动设置不要检查特定文件的更改情况。
git update-index --assume-unchanged PATH #在PATH处输入要忽略的文件。

方式三

另外 git 还提供了另一种 exclude 的方式来做同样的事情,不同的是 .gitignore 这个文件本身会提交到版本库中去。用来保存的是公共的需要排除的文件。而 .git/info/exclude 这里设置的则是你自己本地需要排除的文件。 他不会影响到其他人。也不会提交到版本库中去。


评论