为什么git不尊重我在Windows上的.gitignore文件?

And*_*ung 5 git

我正在尝试使用以下规则设置.gitignore文件

*/bin
Run Code Online (Sandbox Code Playgroud)

bin除非我使用反斜杠,否则它不会忽略所有文件夹

*\bin
Run Code Online (Sandbox Code Playgroud)

它不应该在所有平台上都一样吗?

Aug*_*sto 6

你不需要在开头指定*.以下示例将忽略目录树的任何部分中的任何bin或Bin目录.

[Bb]in/
Run Code Online (Sandbox Code Playgroud)

前面的示例适用于visual studio,因为它以小写或大写形式创建bin文件夹.你可以在这里看到我在windows中使用过的.gitignore的例子.

我忘了补充说如果你要在windows上使用git,你可能想在.git/config中的配置文件中设置忽略大小写

[core]
{...}
    ignorecase = true
{...}
Run Code Online (Sandbox Code Playgroud)

  • 一点解释:`*`(如`*/bin`)与斜杠不匹配.它只能在一个路径组件中匹配.另外,"/"的存在意味着只能从gitignore的级别检查模式.因此`*/bin`只会忽略一个级别为down的文件/目录. (3认同)