gitignore 中的 /build 和 build/ 有什么区别?

What is the different between /build and build/ in gitignore?

我注意到 中 Android 的 .gitignore 推荐有 /buildbuild/。他们有什么区别?我们应该两者都有,还是只需要一个就可以?

/build 是我喜欢称呼的 anchored 名称。它与 .gitignore 所在树级别的文件或目录名称 build 相匹配。所以这不包括 /build,无论它是文件还是目录,但不包括 abc/build,无论它是文件还是目录。

与此同时,build/ 锚定,因此它匹配此处或以下树的任何级别。但是它确实有一个尾部斜杠,所以它只匹配名为 目录 (或文件夹,如果你喜欢这个词) build。所以如果有abc/builddef/ghi/build,当且仅当它是一个目录时才匹配。