git 客户端操作的 HTTP URI 是否有特定的正则表达式?

Is there a specific regular expression of HTTP URIs a git client operates on?

我正在尝试配置我的 Apache 反向代理以匹配 git 客户端使用 HTTP 后端访问的 URI,以进行身份​​验证¹。为此,我想在代理的 URI 上匹配 HTTP 请求并区别对待它们。后半部分没有问题,但我很难找到一个好的 URI pattern/list 来匹配这些请求。

目前我发现的是:

简单列出上述模式也让我担心的是:

所以,理想情况下,我想指出一些 documentation/code 的内容,它显示了一个完整的概述,哪些 URI git http 客户端 可能 操作。它可能是一个简单的正则表达式 - 这就是我最终要寻找的 - 只要它是权威的。


¹ 我正在尝试使用 Apache 作为身份验证反向代理执行 SSO 登录,通过 HTTPS 与常规网页使用不同类型的身份验证 Git。该应用程序 Gerrit Code Review 通过具有 SSO 身份验证和启用 auth.trustContainerAuth 的公共 URL 前缀为页面和 Git 存储库提供服务,因此我无法真正匹配例如^/git/.* 按照 git-http-backend.

联机帮助页中的建议

智能和哑 HTTP 的路径列表在 the source code 中。请注意,它不包括查询参数或内容类型。

请注意,为 Git 添加 SHA-256 支持的工作正在进行中,因此现在接受 40 个字符的十六进制字符串的任何内容将来也将处理 64 个字符的十六进制字符串。