我想知道我的服务器是否正在运行Subversion 1.5。
我怎么才能知道呢?
也将很高兴知道我的SVN客户端版本号。SVN的帮助没有帮助。
注意:我不想要我的项目的修订号等。这个问题是关于Subversion软件本身的。
我想知道我的服务器是否正在运行Subversion 1.5。
我怎么才能知道呢?
也将很高兴知道我的SVN客户端版本号。SVN的帮助没有帮助。
注意:我不想要我的项目的修订号等。这个问题是关于Subversion软件本身的。
当前回答
对于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服务器。
其他回答
如果使用VisualSVN Server,可以通过几种不同的方法找到版本号。
使用VisualSVN服务器管理器
按照以下步骤通过管理控制台找到版本:
启动VisualSVN Server Manager控制台。 查看仪表板右下角的版本。
如果单击Version,还将看到组件的版本。
检查README.txt文件
按照以下步骤从readme.txt文件中找到版本:
notepad.exe开始。 打开“%VISUALSVN_SERVER%README.txt”文件。第一行显示版本号。
还有一个选择:如果你有Firefox(我使用14.0.1)和SVN的web界面:
打开工具->Web Developer->Web控制台在一个回购页面 刷新页面 单击GET行 查看Server:行的Response Headers部分
这里应该有一个“SVN/1.7.4”字符串或类似的字符串。同样,这可能只在上面提到的“ServerTokens Full”时才有效。
对于基于http的服务器,有一个Python脚本可以找到服务器版本: http://svn.apache.org/repos/asf/subversion/trunk/tools/client-side/server-version.py
您可以使用
`svn --version`
如果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';
通过浏览器直接访问SVN的地址即可。检查源代码(Ctrl + U),然后你会在HTML代码中发现如下内容:
<svn version="1.6. ..." ...