gpt4 book ai didi

git - .gitignore 中 a/和 a/* 和 a/** 的区别?

转载 作者:太空狗 更新时间:2023-10-29 14:27:50 28 4
gpt4 key购买 nike

这是我的文件夹。

a
├─ b
│ ├─ b1.txt
│ └─ b2.txt
├─ a1.txt
└─ a2.txt
.gitignore

首先:

我发现如果我想忽略文件夹a,a/a/*a/**都可以完成。

其次:

我想忽略文件夹 a 中除文件夹 b 之外的所有内容,唯一的方法是:

a/*
!a/b/

我不知道为什么 a/** 不能这样做?

# this way can't except folder b
a/**
!a/b/

或者你可以告诉我如何使用 a/**

最佳答案

** 匹配任意数量的目录,* 只匹配一个。
所以如果你e。 G。忽略 /a/**/d/,然后是 /a/b/d//a/b/c/d/被忽略。
如果你G。忽略/a/*/d/,然后/a/b/d/被忽略而/a/b/c/d/不被忽视。

如果一个文件夹被忽略,那么 Git 甚至不会查看它的内容来检查是否包含。这就是为什么你不能忽略 /a/ 然后包含 /a/b/,因为 Git 甚至不会查看 /a/。因此,您必须使用 /a/* 忽略 /a/ 中的所有内容,然后包括 /a/b/ 以忽略所有内容在/a/中,除了/a/b/的所有内容。

关于git - .gitignore 中 a/和 a/* 和 a/** 的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44157448/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com