获取SVN中的最新版本号?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (31)

使用PHP,Perl或Python(最好是PHP),我需要一种方法来查询SVN数据库并找出发送给SVN的最新版本号。除此之外,我不需要任何东西。它需要非密集型(所以我每5分钟做一次cron作业; SVN的性能不应受到影响)。

SVN位于我的Intranet上,但不是我的特定计算机。

我安装了SVN,但没有为PHP / Perl / Python安装绑定。我正在运行Windows XP,但我更喜欢独立于平台的解决方案,它也可以在Linux中工作。如果您拥有仅限Linux的(或纯XP)解决方案,那也是有帮助的。

提问于
用户回答回答于
<?php
    $url = 'your repository here';
    $output = `svn info $url`;
    echo "<pre>$output</pre>";
?>

可以获得XML输出,如下所示:

$output = `svn info $url --xml`;

如果出现错误,输出将被定向到stderr。要在输出中捕获stderr,请使用:

$output = `svn info $url 2>&1`;
用户回答回答于

如果你想分析一个本地工作副本,最好的工具是svnversionSubversion自带的,并产生类似的输出968:1000M。该文件说:

如果工作副本是单一修订版,未修改,未切换并且URL与TRAIL_URL参数匹配,则版本号将为单个数字。如果工作副本不常见,版本号将更加复杂: 4123:4168 mixed revision working copy 4168M modified working copy 4123S switched working copy 4123:4168MS mixed revision, modified, switched working copy

扫码关注云+社区