我有一个具有以下结构的 git 存储库:
.\.gitignore
.\Dir1
.\Dir2
.\Hello world.txt
.\Dir1\Hi.txt
.\Dir2\Hey!.txt
我希望 Git 仅跟踪
.\Dir1\Hi.txt
,因此我排除了带有 *
的所有文件,并尝试为我关心的一个文件添加例外。但我尝试了以下所有 gitignore 异常,但没有一个起作用:
*
!Dir1/Hi.txt
!/Dir1/Hi.txt
!Dir1\Hi.txt
!\Dir1\Hi.txt
知道为什么吗?
实际上,我想对更复杂的目录结构中的一长串文件执行此异常,但是让第一个示例正常工作对于理解为什么这不起作用至关重要。
您可以在另一个答案中看到 .gitignore 失败原因的完整解释:https://stackoverflow.com/a/61556103/12508080
正确的语法:
*
!Dir1
!Dir1/Hi.txt