我有一个这样的文件夹:
/<root>
|.git/
|3rd party/
| |a.txt
|.gitignore
|a.txt
.gitignore内容:
*.txt
*.exe
*.dll
*.lib
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
!3rd party/
我想忽略某些文件,例如根文件夹中的exe, dll, lib, txt
,所有子文件夹除了 3rd party/
文件夹。但是git仍然忽略文件3rd party/a.txt
这有什么问题?
P / s:我还希望Debug
目录中的Release
,3rd party
文件夹(如果有)不被忽略。也就是说,此.gitignore文件中的每个规则都不适用于3rd party
文件夹
答案 0 :(得分:1)
尝试这样的事情。此外,这是假设您连接第三方文件夹,因此它是3rdparty
。
*.exe
*.txt
*.lib
!/3rdparty/*.lib
!/3rdparty/*.exe
!/3rdparty/*.txt
答案 1 :(得分:-1)
如果您只想查看3rd party
目录的文本文件,请将!3rd party/*.txt
添加到.gitignore
。
之后你需要清除cache
。
git rm --cached .gitignore