使用.gitignore反向选择,我只是想跟踪app目录。app是emply下的二级目录。
我使用了以下代码,但是 git 没有跟踪任何内容
*
!*/
!*/app
Run Code Online (Sandbox Code Playgroud)
我已经测试过类似的问题,照着写,但是无效
我只是遇到了一个稍微棘手的问题并最终来到这里,所以如果您也遇到这种情况,请执行以下操作:
如果您忽略一个具体目录(例如本例中的 /Emply/ )但想要包含它的一些子目录或包含的文件,则这将不起作用:
/Emply/
!/Emply/app # Does not work!
Run Code Online (Sandbox Code Playgroud)
原因是 git 出于性能原因不会列出被忽略的目录(来源)。相反,使用通配符忽略所有同级目录和文件:
/Emply/*
!/Emply/app # Works!
Run Code Online (Sandbox Code Playgroud)
这有点晦涩难懂,简直让我抓狂。