Git不全部忽略子文件,保留想要匹配的文件进行跟踪

2015-12-18  本文已影响0人  glutton

今天在做项目的时候,偶然遇到这样一个问题,Node的node_modules目录下的文件正常是不提到版本库的,但是我们自建了私有的npm版本库之后,私有的package是需要提交到git上,进行跟踪的。这样就产生了一个问题,如何解决一个目录下既有要忽略的文件,又有要匹配的文件呢?

解决办法如下:

git提供了一个叹号(!)它的意思是非:如下

*.a

!lib.a

这样的写在.gitignore中,会忽略掉所有以.a结尾的文件,但是不忽略lib.a文件。在这样的启发下终于找到了解决办法

node_modules/*

!node_modules/@scope

在这个过程中,我曾试过如下的规则,但是没有成功

node_modules/

!node_modules/@scope 

或者

node_modules

!node_modules/@scope

都失败了,我任务如果使用!来解决那些文件需要跟踪,匹配的规则要和忽略的规则一致才行

上一篇下一篇

猜你喜欢

热点阅读