什么';获取php web应用程序的自动增量版本号的最佳方法是什么?

什么';获取php web应用程序的自动增量版本号的最佳方法是什么?,php,svn,auto-increment,Php,Svn,Auto Increment,我想在基于PHP的web应用程序中添加一个自动增量版本号 因为我不是在编译,而是在使用svn进行源代码控制,所以我认为可能每个签出都可以算作一个构建 我说得对吗 如果是,如何通过PHP获取生产服务器本地副本的当前svn修订号 如果没有,您认为在web应用程序中添加自动增量版本号的最佳方法是什么?很长一段时间没有使用SVN,但这应该是可行的 $var = '$Id:$'; SVN将在每次签出时替换$Id:$ 更新:看来,$Rev:$更方便。我想可能会回答你的问题 我找到了这个 如果有人说在部署脚

我想在基于PHP的web应用程序中添加一个自动增量版本号

因为我不是在编译,而是在使用svn进行源代码控制,所以我认为可能每个签出都可以算作一个构建

我说得对吗

如果是,如何通过PHP获取生产服务器本地副本的当前svn修订号


如果没有,您认为在web应用程序中添加自动增量版本号的最佳方法是什么?

很长一段时间没有使用SVN,但这应该是可行的

$var = '$Id:$';
SVN将在每次签出时替换
$Id:$

更新:看来,
$Rev:$
更方便。

我想可能会回答你的问题

我找到了这个

如果有人说在部署脚本中,您可以包括:

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/条目:

$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;
}

谢谢试过这个,效果很好!但仅当当前文件已更改时:S