在`.gitignore`文件中导致斜杠的含义

时间:2011-07-04 16:45:44

标签: git gitignore

如果我将模式放在带有前导斜杠的.gitignore文件中,斜杠是指.gitignore文件所在的目录,还是引用整个根目录?存储库

(我发现的手册页已经仔细隐藏了这些信息。)

1 个答案:

答案 0 :(得分:29)

这是documentation text

  
      
  • 前导斜杠与路径名的开头匹配。例如,“/ *。c。”匹配“cat-file.c”   但不是“mozilla-sha1 / sha1.c”。
  •   

这些是我的猜测:

  • 如果您使用in-repository - .gitignore.gitignore所在的目录 找到了 - 使它相对于存储库根目录并没有多大用处。

    在存储库根目录和子目录中使用同名文件的简短实验(和 同一目录中的.gitignore确认了这一点。

  • 如果您使用.git/info/excludecore.excludesfile,我认为它是相对的 到存储库根目录。

    这也是(对于信息/排除)由同一测试确认的(对1.7.3.4的两个测试)。

Schnouki找到了关于此的文档的正确部分(强调我的):

  
      
  • [...]
  •   
  • 从与路径相同的目录中的.gitignore文件读取的模式,或者在   任何父目录,在较高级别文件中具有模式(直到顶层   工作树)被低层文件中的那些覆盖到了   包含该文件的目录。 这些模式相对于位置匹配   .gitignore文件。项目通常包含此类.gitignore个文件   存储库,包含作为项目构建的一部分生成的文件的模式。
  •   
  • [...]
  •   

可以说,为了清楚起见,可以在上面引用的后面部分再次重复这一事实。

相关问题