如何忽略存储库中的文件?

我有一个文件(config.php),已经提交到Git仓库,但我想忽略本地,即我想这个文件留在存储库,但强迫Git忽略任何更改。

我把文件放到.gitignore中,但是它仍然被标记为已更改,Git仍然在尝试对其进行更改,每当我提交一些内容时。 任何想法,我错过或做错了什么?

如果文件仍然显示在状态中,即使它位于.gitignore中,请确保它尚未被跟踪。

git rm --cached config.php 

如果你只是想在本地忽略它,你也可以使其被git状态忽略:

 git update-index --assume-unchanged config.php 

如果这个文件已经在版本库中,并且是Index / Staging区域,那么对.gitignore的更新不会改变这种情况 – 它会继续提交。

要从索引/暂存区域删除文件,请使用git rm <file>

一旦在.gitignore中列出了一个文件,你就不能改变它。

所以你可以在一个提交中从列表中删除文件,提交改变下一个,然后在第三次提交后重新添加文件到忽略列表。

我通常做的是把文件分成两个,一个是允许的,我可以改变,其中包括第二个文件(如果存在的话),然后devs可以在忽略文件中进行configuration更改。