Gitignore中的感叹号不起作用 [英] exclamation mark in .gitignore doesn't work
本文介绍了Gitignore中的感叹号不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有此文件结构
aaafolder
└─ bbbfolder
├─ filename0.txt
├─ dddfolder
│ ├─ filename1.txt
│ └─ filename2.txt
├─ cccfolder
└─ filename.txt
我希望隐藏aaafolder
文件夹的所有内容,但dddfolder
文件夹中的所有文件都必须存在。
所以我要在存储库中获取Git This:
aaafolder
└─ bbbfolder
└─ dddfolder
├─ filename1.txt
└─ filename2.txt
我的.gitignore
如下所示:
/source/aaafolder/**
!/source/aaafolder/bbbfolder/dddfolder/*
但是,整个aaafolder
文件夹将被忽略
推荐答案
PERthe gitignore
documentation,否定时:
如果排除了某个文件的父目录,则无法重新包含该文件。
这意味着您需要确保包括dddfolder
的父级,即使不包括dddfolder
的内容也是如此。
换句话说,您不能使用**
贪婪地匹配。您需要使用单级通配符。您需要排除dddfolder
之前的文件夹,然后包括其内容。
aaafolder/*
!aaafolder/bbbfolder
aaafolder/bbbfolder/*
!aaafolder/bbbfolder/dddfolder
这篇关于Gitignore中的感叹号不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文