在项目的根目录下,我有一个foo
文件夹。在foo
文件夹中,我有一个bar
文件夹。我想忽略对文件bar
夹内所有文件的所有更改。我在我的gitignore
:
/foo/bar
该文件夹已选中:它存在并且其中有要忽略的文件。gitignore
是commit
ted。但是,我有一个要修改的文件,并且位于我的bar
文件夹内。当我打字
git status
在我里面,我git bash
看到应该被忽略的文件。原因可能是什么?如何成功忽略bar文件夹中的所有文件?
请注意,以前用同一行忽略了这些文件,但是我不得不将该行临时删除到commit
服务器上的某行。之后commit
,我把线放回去gitignore
。这是前一阵子,但现在我注意到文件将在中git status
。我希望能够修改被忽略的文件而不会出现在中git status
。
git status foo/bar/file-that-should-be-ignored
?
git log foo/bar/file-that-should-be-ignored
。如果它不应该成为存储库的一部分,则应将其删除git rm --cached foo/bar/file-that-should-be-ignored
,然后按照下面的Reck的建议进行提交(尽管我只是在文件而不是整个文件夹上进行操作)。这将(a)从Git中删除文件,(b)将文件保留在本地副本中,以及(c)在其他文件fetch
或pull
新提交时导致文件被删除。
git add -f ignored-file
即使您忽略了文件,也会添加一个文件。