我想在我的基于php的web应用程序中放置一个自动增量构建号。
因为我没有编译,但我使用svn进行源代码控制,我想也许每次签出都可以算作一次构建。
我说的对吗?
如果是,如何通过PHP获取生产服务器本地副本的当前svn版本号 ?
如果没有,你认为在web应用程序中添加自动增量构建号的最佳方法是什么?
没有使用SVN很长一段时间,但应该可以使用
$var = '$Id:$';
SVN在每次签出时替换$Id:$
更新:看来$Rev:$
更方便。
我想在SVN中获得最后的版本号?也许能回答你的问题!
我发现了这个如何在PHP中获得svn版本号?
有人说在部署脚本中你可以包括:
cd /var/www/project
svn update
rm version.php
svnversion > version.php
用当前svn版本填充version.php。
然后,在需要的地方包含version.php。
另外,我发现这似乎不需要更新特定的文件:
$path='path_to_your_project';
function get_svn_revision ($path)
{
$cmd = 'svnversion -n ' . $path;
$result = (int)exec ($cmd);
return $result;
}
但是因为我不想执行命令,所以我最终查询了/。Svn/entries在项目的根目录下使用:
$path='path_to_your_project';
function get_svn_revision($path) {
$svn = File($path . '/.svn/entries');
//Revision number is the fourth line
$result = $svn[3];
unset($svn);
return $result;
}