我有一棵树:
- bower_components
- jquery
- .bower.json
- jquery.js
- ...
- underscore
- .bower.json
- underscore.js
- ...
- ...
我想忽略bower_components/
除.bower.json
个文件以外的所有内容,所以我写了.gitignore
:
bower_components/**/*
!bower_components/**/.bower.json
根据gitignore,man git应该忽略除bower_components
之外的.bower.json
子目录中的所有内容,但事实并非如此。我不知道我做错了什么,我尝试了不同的组合,包括!.bower.json
,但没有运气。
git check-ignore bower_components/jquery/.bower.json -v
给了我:
.gitignore:1:bower_components/**/* bower_components/jquery/.bower.json
ls bower_components/**/.bower.json
为我提供了.bower.json
个文件的列表。
我有一个测试树可以玩:nocorp.me/32430Z3J1o2k
答案 0 :(得分:1)
也许这是一个错误,也许不是,但我不得不使用单个星号而不是双星:
bower_components/*/*
!bower_components/*/.bower.json
答案 1 :(得分:0)
我认为你不想在这种情况下使用双星。
!**/.bower.json
bower_components/*
答案 2 :(得分:0)
我不确定你是这种情况,但**是在1.8.2中添加的,所以如果你使用更旧的东西它将无法正常工作
git --version