我想知道我的服务器是否正在运行Subversion 1.5。
我怎么才能知道呢?
也将很高兴知道我的SVN客户端版本号。SVN的帮助没有帮助。
注意:我不想要我的项目的修订号等。这个问题是关于Subversion软件本身的。
我想知道我的服务器是否正在运行Subversion 1.5。
我怎么才能知道呢?
也将很高兴知道我的SVN客户端版本号。SVN的帮助没有帮助。
注意:我不想要我的项目的修订号等。这个问题是关于Subversion软件本身的。
当前回答
您可以使用HTTP连接到Subversion服务器,并在HTTP报头中找到版本号。
其他回答
对于基于http的服务器,有一个Python脚本可以找到服务器版本: http://svn.apache.org/repos/asf/subversion/trunk/tools/client-side/server-version.py
您可以使用
`svn --version`
对于svn+ssh配置,使用ssh工具在主机上执行svnserve——version命令:
$ssh user@host svnserve --version
需要在实际作为服务器的机器上执行svnserve命令。
对于Subversion 1.7及以上版本,服务器不提供指示服务器版本的页脚。但是您可以运行以下命令从响应头中获取版本
$ curl -s -D - http://svn.server.net/svn/repository
HTTP/1.1 401 Authorization Required
Date: Wed, 09 Jan 2013 03:01:43 GMT
Server: Apache/2.2.9 (Unix) DAV/2 SVN/1.7.4
注意,这也适用于您没有访问授权的Subversion服务器。
如果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';
您可以使用HTTP连接到Subversion服务器,并在HTTP报头中找到版本号。