Subversion HTTP文件链接不尊重peg修订版,任何解决方法?

时间:2012-06-27 01:40:15

标签: svn

问题是:当通过带有?p=NNN选项的Web浏览器访问SVN目录时,它会根据需要列出该修订版的文件。但是,Web服务器提供的文件链接没有附加?p=NNN,因此可能导致链接断开,或者更糟糕的是,随着时间的推移,用户会无意识地获取不一致或不需要的版本。

?p=NNN是一个很棒的功能,它可以让我们拥有一个永久链接到历史文件,我喜欢它。希望这个问题有解决方案或解决方法。

enter image description here

[[详情已添加]]

SVN服务器环境:

  • Windows Server 2003 SP3
  • SVN和apache http服务器来自CollabNet,安装程序名为CollabNetSubversion-server-1.6.4-1.win32.exe。 Httpd.exe版本2.2.11。
  • httpd.conf中与svn相关的配置如下:

-

<Location /svnreps/WebApps/>
  DAV svn

  SVNParentPath D:/SvnReps/WebApps
  AuthzSVNAccessFile D:/SvnReps/WebApps/svn-authz-file

  Satisfy Any
  Require valid-user
</Location>

3 个答案:

答案 0 :(得分:2)

我同意Peter Parker的观点,你的问题似乎适用于我的SVN版本。您也可以尝试使用此网址格式来查看这是否有效,这是我过去经常使用的网址格式

<REPO_URL>/!svn/bc/<REVISION_NUMBER>/<FILE_LOCATION>

实施例

http://svnbox/repository/!svn/bc/13/trunk/my_file

这适用于文件和目录。

说完这个之后,我原以为它会检索与?p=功能相同的输出,在你的情况下它不起作用。无论如何,它值得一试!

示例

$ svn info http://svn.apache.org/repos/asf/httpd/site/trunk/content/index.mdtext
Path: index.mdtext
Name: index.mdtext
URL: http://svn.apache.org/repos/asf/httpd/site/trunk/content/index.mdtext
Repository Root: http://svn.apache.org/repos/asf
Repository UUID: 13f79535-47bb-0310-9956-ffa450edef68
Revision: 1435013
Node Kind: file
Last Changed Author: jim
Last Changed Rev: 1384287
Last Changed Date: 2012-09-13 04:51:01 -0700 (Thu, 13 Sep 2012)

按名称获取修订版1435013:

答案 1 :(得分:0)

最后省略斜线。

而不是https://example.com/svn/folder/?p=9

使用网址https://example.com/svn/folder?p=9

答案 2 :(得分:0)

我用peg修订版检查了Apache的SVN回购:

http://svn.apache.org/repos/asf/subversion/branches/?p=999999

它确实为网页上的每个文件/目录链接显示?p=999999

然后,我尝试了Collabnet Subversion Edge 2.3.0(svn 1。7。3,2012年2月)。好吧,好的,peg修订确实出现在所有链接上。

所以,对于一些较旧的Subversion版本来说,这可能是一个问题。

enter image description here

On Sourceforge:https://gnumakeuniproc.svn.sourceforge.net/svnroot/gnumakeuniproc/trunk/?p=999(Subversion 1.6.9,也做得很好)

[2012-09-03] 解决方案

现在,我几乎确认这是由于旧的颠覆版本。我将问题Apache + SVN实例从CollabNet升级到1.7.6。 http://www.open.collab.net/downloads/subversion。现在我得到了理想的结果。

我使用 Subversion 1.7.6 + Apache Server(Windows 32位)包,它提供升级我现有的服务器。我接受升级,升级期间不会更改httpd.conf。

enter image description here