除了certian dir之外,Git忽略了一个目录

时间:2018-04-24 06:08:40

标签: regex git gitignore

我一直试图了解git模式格式,以免忽略node_modules中的某些常见目录

我有超过20个目录,所有这些目录共享相同的三个字符,我试图找出一种模式从gitignore中排除这些目录

例如

 node_modules
 |
 |apifoo
 |apibar
 |apix
 |..
 |..

2 个答案:

答案 0 :(得分:1)

https://git-scm.com/docs/gitignore

  

可选前缀"!"否定了这种模式;之前模式排除的任何匹配文件将再次包含在内。如果排除该文件的父目录,则无法重新包含文件。出于性能原因,Git不会列出排除的目录,因此无论在何处定义,所包含文件的任何模式都不起作用。在第一个"!"前面放一个反斜杠(" \")对于以文字"!"开头的模式,例如"!important!.txt"。

类似于!node_modules / api *

答案 1 :(得分:0)

避免将node_modules排除在目录之外,而是排除其所有文件! 因为排除目录为@markus所以不会让git关注该目录中的任何规则。

不包括node_modules就像node_modules/这不是你想要的,在你的情况下你想告诉git:请排除node_modules内的所有文件dir而不是node_modules它自己这可以通过node_modules/*来实现在!/node_modules/apihawk*/

添加一个否定以包含任何以api开头的目录