我有层次结构的git文件夹如下:
我有一个文件夹工作。
Jobs文件夹有子文件夹myjob1 /,myjob2 /和每个子文件夹都有文件夹构建/
在这里,我想只忽略jobs/**/build
文件夹并将剩余数据推送到git
$ls
jobs/
.gitignore
$cat .gitignore
jobs/**/build
$ls jobs/
myjob1/
myjob2/
$ls jobs/myjob1/
config.xml
build
$ls jobs/myjob2/
config.xml
build
$ cat .gitignore
jobs/**/build
$git add jobs
$git commit -m "jobs added"
On branch master
Your branch is up-to-date with 'origin/master'.
nothing to commit, working directory clean
任何人都可以帮我推送这些数据吗?
我不确定为什么你目前的解决方案不起作用是因为。
你想要的是专门针对build/
文件夹。我认为这可以在/build/
之前使用通配符完成。要么像这样:
**/build/
或者这样,如果您特别想在build
目录中使用jobs
文件夹:
jobs/*/build/
jobs/**/build/
我在本地尝试了所有这些选项,他们为我工作。
如果你以前推过那些文件,为了让git忽略它们,你现在必须撤销先前提交重置HEAD,你就可以忽略它们了。
我认为因为jobs文件夹显然是你的repo的根目录。它应该是/jobs/**/build
。我重新创建了类似的情况,并以这种方式工作。