我想知道我的服务器是否正在运行Subversion 1.5。

我怎么才能知道呢?

也将很高兴知道我的SVN客户端版本号。SVN的帮助没有帮助。

注意:我不想要我的项目的修订号等。这个问题是关于Subversion软件本身的。


当前回答

试试这个:

ssh your_user@your_server svnserve --version

svnserve, version 1.3.1 (r19032)
   compiled May  8 2006, 07:38:44

我希望这能有所帮助。

其他回答

用Firefox浏览存储库,用Firebug检查元素。在NET选项卡下,您可以检查页面的Header。它会像这样:

Server: Apache/2.2.14 (Win32) DAV/2 SVN/1.X.X

下面是获取SVN服务器版本的最简单方法。即使您的SVN存储库需要HTTPS, HTTP也可以工作。

$ curl -X OPTIONS http://my-svn-domain/
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>...</head>
<body>...
<address>Apache/2.2.11 (Debian) DAV/2 SVN/1.5.6 PHP/5.2.9-4 ...</address>
</body>
</html>

如果Subversion服务器版本没有打印在HTML清单中,则可以在服务器返回的HTTP RESPONSE报头中找到该版本。您可以使用这个shell命令来获取它

wget -S --no-check-certificate \
  --spider 'http://svn.server.net/svn/repository' 2>&1 \
  | sed -n '/SVN/s/.*\(SVN[0-9\/\.]*\).*/\1/p';

如果SVN服务器需要提供用户名和密码,则在命令中添加wget参数——user和——password,如下所示

wget -S --no-check-certificate \
  --user='username' --password='password' \
  --spider 'http://svn.server.net/svn/repository' 2>&1 \
  | sed -n '/SVN/s/.*\(SVN[0-9\/\.]*\).*/\1/p';

如果使用VisualSVN Server,可以通过几种不同的方法找到版本号。

使用VisualSVN服务器管理器

按照以下步骤通过管理控制台找到版本:

启动VisualSVN Server Manager控制台。 查看仪表板右下角的版本。

如果单击Version,还将看到组件的版本。

检查README.txt文件

按照以下步骤从readme.txt文件中找到版本:

notepad.exe开始。 打开“%VISUALSVN_SERVER%README.txt”文件。第一行显示版本号。

让我们把这些回答合并起来:

对于存储库/服务器(原始问题):

如果能够访问Subversion服务器:

根据Manuel之前的回答,在SVN服务器上运行以下命令: svnadmin——版本

HTTP/HTTPS访问:

See the "powered by Subversion" line when accessing the server via a browser. Access the repository via browser and then look for the version string embedded in the HTML source. From earlier answers by elviejo and jaredjacobs. Similarly, from ??, use your browser's developer tools (usually Ctrl + Shift + I) to read the full response. This is also the easiest (non-automated) way to deal with certificates and authorization - your browser does it for you. Check the response tags (these are not shown in the HTML source), from an earlier answer by Christopher wget -S --spider 'http://svn.server.net/svn/repository' 2>&1 | sed -n '/SVN/s/.*\(SVN[0-9\/\.]*\).*/\1/p'

如果svn://或ssh+svn access

来自Milen之前的回答 Svnserve——version(在SVN服务器上运行) 这是格伦之前的回答 SSH user@host svnserve——version

如果GoogleCode SVN服务器

    Check out the current version in a FAQ: 
    http://code.google.com/p/support/wiki/SubversionFAQ#What_version_of_Subversion_do_you_use?

如果是另一台自定义SVN服务器

    TBD

请编辑完成这个回答

对于客户(不是原来的问题):

svn --version