忽略具有不同扩展名的.gitignore文件
我想忽略特定文件夹(忽略具有不同扩展名的.gitignore文件,git,gitignore,Git,Gitignore,我想忽略特定文件夹(data/)中扩展名为*.mtx或*.otc的所有文件,以及所有子文件夹中扩展名为*.pyc的所有文件。这个.gitignore会起作用吗 /data/*.mtx /data/*.otc *.pyc 有没有办法使它更紧凑?显然这不起作用: /data/(*.mtx|*.otc) *.pyc 除非绝对必要,否则我宁愿不使用本地gitignore,因为在我看来,将所有“ignore”指令放在一个地方似乎更整洁,但我愿意接受这里的建议 您只能在回购协议的根文件夹中保留一个.gi
data/
)中扩展名为*.mtx
或*.otc
的所有文件,以及所有子文件夹中扩展名为*.pyc
的所有文件。这个.gitignore
会起作用吗
/data/*.mtx
/data/*.otc
*.pyc
有没有办法使它更紧凑?显然这不起作用:
/data/(*.mtx|*.otc)
*.pyc
除非绝对必要,否则我宁愿不使用本地gitignore,因为在我看来,将所有“ignore”指令放在一个地方似乎更整洁,但我愿意接受这里的建议
您只能在回购协议的根文件夹中保留一个.gitginore
**/data/*.mtx
**/data/*.otc
*.pyc
这将忽略数据文件夹中的mtx
或otc
文件,即使数据不是顶级文件夹(因为您没有使用锚定“/”)
检查这是否适用于:
git check-ignore -v path/to/a/file
为什么不使用
git status
并查看它是否工作?假设data/
处于顶层,而您的.gitignore
处于顶层,那么第一个示例应该可以工作。第二个没有,因为.gitignore
只接受基本的glob样式语法。您可以找到有关语法的更多信息。.gitignore
语法使用glob通配符,而glob通配符无法完成您试图执行的操作。所以答案是:不,不可能。您可以通过将带有*.mtx
和*.otc
的.gitignore
放入/data/
@Sinapse中来节省一些字符,这是一个很好的观点,但我上个星期才真正了解了GitHub,甚至更晚才了解了git
。我还不熟悉所有的命令。@jszakmeister您所有的假设都是正确的。