我有这个结构:
versions
├── library-3.1
│ ├── Dockerfile
│ ├── options
│ └── armhf
│ ├── Dockerfile
│ └── rootfs.tar.xz
├── library-3.6
│ ├── Dockerfile
│ ├── options
│ └── x86_64
│ ├── Dockerfile
│ └── rootfs.tar.xz
...
我希望git忽略versions/**/
下的任何文件夹(例如versions/**/armhf
和versions/**/x86_64
),但要跟踪文件options
和Dockerfile
有什么想法吗?谢谢!
答案 0 :(得分:0)
# Ignore everything under 'versions/'...
versions/*
# ...except 'options' and 'Dockerfile'
!versions/**/options
!versions/**/Dockerfile
将您需要的任何其他文件添加到排除列表中。
或者,将 .gitignore 文件添加到要忽略文件的每个子目录中。这可以在项目增长时提供更好的灵活性。
答案 1 :(得分:0)
试试这个:
!versions/**/Dockerfile
!version/**/options
答案 2 :(得分:0)
记住:
It is not possible to re-include a file if a parent directory of that file is excluded.
忽略文件:
versions/**
但不是文件夹:
!versions/**/
然后你可以排除一些文件(因为它们的父文件夹不被忽略)
!versions/**/Dockerfile
!versions/**/option
记住: