GIT忽略已使用exclude进行本地更改的提交文件

时间:2015-02-16 07:41:14

标签: git

我克隆了有三个文件的远程存储库

file1.txt 
file2.txt
file3.txt

我的机器本地更改为file3.txt。我不希望更改进入远程仓库,反之亦然。

我读到使用.gitignore时,无法忽略已经提交和跟踪的文件。

我决定使用.git / info / exclude文件和以下行

排除档案

file3.txt

但仍然在file3.txt中进行的更改显示为非暂存文件。我希望在提交和登台时忽略此file3.txt,还需要阻止file3.txt从远程仓库更新

提前感谢您提供任何帮助

2 个答案:

答案 0 :(得分:7)

  

我读到使用.gitignore时,无法忽略已经提交和跟踪的文件。

.gitignore.git/info/exclude

您只需要先删除该文件。

git rm --cached file3.txt

一旦删除(仅从缓存中删除,而不是从硬盘驱动器中删除),git status就不应该显示它(因为它已经在.gitignore中)

请参阅“git rm --cached x” vs “git reset head — x”?”:“cache”,也称为“index”或“staging area”,仅从索引中删除文件并将其保留在工作副本中。

回复中

file3.txt将不再版本 一旦删除将被提交并推送,它将传播到其他克隆。


如果你只需要ignore the file locally一段时间,你可以尝试:

git update-index --assume-unchanged -- file3.txt

注意:根本不涉及.gitignore

要在本地停止忽略更改:

git update-index --no-assume-unchanged -- file3.txt

答案 1 :(得分:0)

编辑添加以下行的.gitignore文件: file3.txt