【发布时间】:2010-10-15 18:32:37
【问题描述】:
当您通过 Apache Httpd 发布 Subversion 存储库时,您获得了一项额外功能:您可以使用任何 HTTP 客户端浏览源代码的 HEAD 版本。
例如,我们有这个存储库:
http://trash-cli.googlecode.com/svn/trunk/
使用任何 HTTP 客户端(例如 Firefox),您都可以浏览 HEAD 版本的文件。 svnbook 很好地解释了如何做到这一点。
但 Google 代码托管提供了一项额外功能:您还可以浏览过去的修订。例如,您可以浏览 r10 修订版:
http://trash-cli.googlecode.com/svn-history/r10/trunk/
您知道 Google 是如何做到这一点的吗?我也希望在我的公司存储库中使用此功能! :)
谢谢
更新 1
以下行为可能有助于我们解决问题。如果我访问存储库中不存在的路径,例如
http://trash-cli.googlecode.com/svn-history/r10/non-existent
我收到以下 404 错误:
找不到
请求的网址 /svn/!svn/bc/10/non-existent 不是 在此服务器上找到。
我怀疑场景下有URL重写规则。
更新 2
请注意,这与this question 不同。我想在我的公司存储库中以一种让用户感到舒适的方式公开此服务,就像 Google Code 所做的那样,我对如何在没有此功能的外部存储库中获取旧版本不感兴趣。我使用的是服务提供者的视角,而不是用户的视角。我想让同事的生活更轻松。
【问题讨论】: