如何在git目录/嵌套子目录中只允许特定文件*.py、*.json、*.sh?
在我的git repo中,我有一个目录,其中可能包含嵌套的子目录。我希望在这些嵌套子目录中只允许*.py、*.sh和*.json 我尝试将以下内容添加到.gitignore:如何在git目录/嵌套子目录中只允许特定文件*.py、*.json、*.sh?,git,Git,在我的git repo中,我有一个目录,其中可能包含嵌套的子目录。我希望在这些嵌套子目录中只允许*.py、*.sh和*.json 我尝试将以下内容添加到.gitignore: /trials/* !/trials/README /experimental/**/ !/trials/**/*.py !/trials/**/*.sh 但它不允许我添加trials/foo/bar.py之类的内容。尝试更改/试用期/**/.py至/试验/***.py: ... !/trials/**/*.py !/t
/trials/*
!/trials/README
/experimental/**/
!/trials/**/*.py
!/trials/**/*.sh
但它不允许我添加trials/foo/bar.py之类的内容。尝试更改
/试用期/**/.py
至/试验/***.py
:
...
!/trials/**/*.py
!/trials/**/*.sh
一旦文件夹被忽略,您就不能排除文件。
换言之: 正确的方法是从gitignore规则中排除文件,即首先将文件夹列为白名单:
/trials/*
!/trials/**/
然后可以排除文件(在相同的.gitignore
文件中):
还可以使用git check ignore-v--afile查看git ignore规则适用于给定文件。前导斜杠可以吗?@JonathanLeffler前导斜杠将规则锚定到git repo的顶部文件夹。这似乎是OP在试用文件夹中想要的。好的。有道理。
!/trials/**/*.py
!/trials/**/*.sh