我看到了类似的问题,但我找不到任何可以帮助我做某些事情的事情。
我有一个我维护的CodeIgniter PHP库,所以我的项目是包含我的库的完整CI安装。我试图忽略构成我的库的文件以外的所有内容。
我觉得我已经阅读了这样做的语法,但是我在目录中得到了意想不到的结果。
首先,我从这开始:
*
!.gitignore
!README.rst
!instructions.html
你可以在这里看到,除了站点根目录下的3个文件外,所有内容都显示为灰色(被忽略),这意味着这些文件不再被忽略...正是我想要的到目前为止。
当我继续尝试并且忽略其余的库文件时,它们存在于目录中,但它根本不起作用。例如,如果我添加...
!application/controllers/paypal
您可以看到其中的目录和文件仍然显示为灰色(被忽略),当然,当我运行git命令时,它们确实被忽略了。
非常感谢任何有关我需要做些什么才能使其正常工作的信息。
答案 0 :(得分:2)
首先只是将文件夹列入白名单。
然后您可以开始白名单文件
*
!**/
!.gitignore
!README.rst
!instructions.html
!application/controllers/paypal/**
像往常一样(我在“How do I add files without dots in them (all extension-less files) to the gitignore
file?”中提到过,.gitignore
主要有一条要记住的规则:
<强> It is not possible to re-include a file if a parent directory of that file is excluded. 强>
这意味着,当您排除所有内容(“*
”)时,您必须列出白名单文件夹,然后才能列出白名单文件。
检查这是否与git check-ignore -v -- afile
一起使用,以查看它是否被忽略(以及是否被忽略)。