在我的项目根目录下有一个foo
文件夹。在foo
文件夹里面,有一个bar
文件夹。我想忽略所有在我的bar
文件夹中的所有文件的更改。我已经在我的 gitignore
文件中添加了以下内容:
/foo/bar
检查了文件夹:它存在并且有需要被忽略的文件。 gitignore
已经提交。但是,我有一个文件在 bar
文件夹中进行了修改。当我输入
git status
在我的git bash
中,我看到了应该被忽略的文件。可能的原因是什么,如何成功地忽略我的bar文件夹内的所有文件?
请注意,这些文件曾经使用相同的行被忽略,但是我不得不暂时删除那行来提交服务器上的一些内容。提交后,我把这行代码放回了gitignore
文件中。虽然这是一段时间以前的事情,但现在我发现这些文件会出现在git status
中。我希望能够修改这些被忽略的文件而不会让它们出现在git status
中。
git add -f ignored-file
命令也会将其添加到版本控制中。 - Chrisgit log foo/bar/file-that-should-be-ignored
查看其历史记录。如果它不应该是仓库的一部分,您应该使用git rm --cached foo/bar/file-that-should-be-ignored
将其移除,并像下面Reck建议的那样提交更改(虽然我只会针对文件而不是整个文件夹)。这将删除文件并 (a)从Git中删除文件,(b)保留本地副本中的文件,在其他人fetch
或pull
新的提交时(c)将导致文件被删除。 - Chris