[英]gitignore all files except the .json files in all subdirectories of a particular directory
[英].gitignore -- track files AND specific subdirectories of directory
在這被標記為重復之前,我已經查看了十幾個 Stack Overflow 問題,但沒有一個對我的案例有用。
root/
├── trackdir1/ # track directory and its subdirectories
├── trackdir2/ # track directory and its subdirectories
├── ignoreddir/ # ignore all other subdirectories of root
├── .../
└── * # keep all FILES within root
我有一個目錄(實際上是幾個目錄,但讓我們假設它是root
)。 我想跟蹤中的所有文件root
和一些特定的子目錄root
,但忽略其他所有子目錄。
我看過的所有 Stack Overflow 問題都做了一個或另一個:包含文件但忽略子目錄,或包含特定子目錄和忽略文件。
根據我對 .gitignore (顯然缺乏)的理解,我需要對root
的文件進行例外處理,對要跟蹤的特定子目錄進行例外處理,然后排除 root 中所有子目錄下的文件。
!/*
!/trackdir1/
!/trackdir1/**
!/trackdir2/
!/trackdir2/**
/*/**
但是,此模式仍排除trackdir1
和trackdir2
。 我也試過!/trackdir1
和!/trackdir1/*
。
我究竟做錯了什么?
.gitignore
文件的內容按順序處理,后面的指令覆蓋前面的指令。 所以在這里你有/*/**
覆蓋!/trackdir2/**
,例如。
簡單地把/*/**
首先應該工作:
/*/**
!/*
!/trackdir1/
!/trackdir1/**
!/trackdir2/
!/trackdir2/**
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.