Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
忽略具有不同扩展名的.gitignore文件_Git_Gitignore - Fatal编程技术网

忽略具有不同扩展名的.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您所有的假设都是正确的。