我有几个关于 .gitignore 的问题。
在我的存储库中,我有一个文件夹
[repo root]\Sub1\Printouts
,其中包含一些 pdf 文件。
我希望 GIT 完全忽略 [repo root]\Sub1\Printouts
中发生的所有事情(新文件、文件删除、文件修改),所以我将其添加到 .gitignore:
Sub1\Printouts\
但是,如果我删除
Sub1\Printouts
中的文件并运行 git status
,我会:
modified: .gitignore
deleted: Sub1/Printouts/aaa.pdf
如果我添加一个新文件,也会发生同样的情况,但如果我编辑一个文件,则不会。
我还有另一个问题:在各个网站上阅读后,我了解到像
Sub1\Printouts\
这样的条目应该与存储库中各处名为 Printouts
的文件夹内名为 Sub1
的文件夹匹配。这意味着应忽略以下所有文件夹:
1) [repo root]\Sub1\Printouts
2) [repo root]\Some folder\Sub1\Printouts
3) [repo root]\Some folder\Yet another folder\Sub1\Printouts
如果我只想忽略 1) 怎么办?如何在 .gitignore 中指定完整路径?
谢谢你
取消跟踪您想要的整个目录
.gitignore
:
git rm --cached -r Sub1/Printouts/
此后,
Sub1/Printouts
中的所有文件和子文件夹都不会被git
跟踪。
现在您可以将此路径添加到您的
.gitignore
文件中,保存它,然后 git
将不再跟踪任何进一步的修改(添加文件、删除文件……):
Sub1/Printouts/