gitignore在强制添加一次后继续跟踪文件

时间:2012-08-30 06:42:28

标签: git gitignore

我在.gitignore中提到了一个文件,但我在git add -f添加了它,因为我想添加 它只有一次然后像往常一样忽略它。

但是,现在默认情况下会对其进行跟踪。我该如何撤消这个?

2 个答案:

答案 0 :(得分:8)

不完全确定您要查找的内容,但您可以删除要在以后提交时忽略的文件

git rm --cached filename
  

请注意,git不会忽略在a之前已经跟踪过的文件   规则已添加到此文件中以忽略它。在这种情况下,文件必须   是非跟踪的,通常使用git rm --cached filename

信息:https://help.github.com/articles/ignoring-files

或者你可以告诉git它忽略了

文件的更改
git update-index --assume-unchanged filename

并使用

撤消它
git update-index --no-assume-unchanged filename

列出所有假设未更改的文件

git ls-files -v|grep '^h'

信息:How do I .gitignore and delete an already committed file without affecting other working copies?

但是请记住,假设 - 在我看来,没有改变是针对git的哲学,这个命令只会忽略你机器上所做的更改。其他人仍然可以覆盖它。

在大多数情况下,您将其用于配置文件。您可以采取的措施是避免使用此选项,将其保留在.gitignore中,并在README中添加设置描述,或者创建一个创建这些文件的小安装脚本。

答案 1 :(得分:0)

你可以用......

删除它
git rm --cached file

然后提交。