如何仅从Git的根文件夹中排除文件
我知道使用.gitignore
文件排除一些正在添加的文件,但我有几个config.php
文件在源码树中,我需要排除只有一个,位于根,而其他保持在版本控制。
我应该写入.gitignore
才能做到这一点?
从文档 :
如果模式不包含斜杠/,git会将其视为shell glob模式,并检查与相对于.gitignore文件位置的path名的匹配(相对于工作树的顶层,如果不是.gitignore文件)。
前导斜杠匹配path名的开头。 例如,“/*.c”与“cat-file.c”匹配,但不匹配“mozilla-sha1 / sha1.c”。
所以你应该添加下面一行到你的根.gitignore
:
/config.php
使用/config.php
。
老版本的git要求你先定义一个忽略模式,并立即(在下一行)定义排除。 [在版本1.9.3(Apple Git-50)上testing]
/config.php !/*/config.php
以后的版本只需要以下[在版本2.2.1上testing]
/config.php
如果上述解决scheme不适合您,请尝试以下操作:
#1.1 Do NOT ignore file pattern in any subdirectory !*/config.php #1.2 ...only ignore it in the current directory /config.php ########################## # 2.1 Ignore file pattern everywhere config.php # 2.2 ...but NOT in the current directory !/config.php