为 php Web 应用程序获取自动递增内部版本号的最佳方法是什么?

发布于 2024-11-02 08:54:26 字数 206 浏览 6 评论 0原文

我想在基于 PHP 的 Web 应用程序中放置一个自动递增的内部版本号。

因为我没有编译,但我使用 svn 进行源代码控制,我想也许每次签出都可以算作一个构建。

我说得对吗?

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

如果没有,您认为在 Web 应用程序中放置自动递增内部版本号的最佳方法是什么?

I want to put an auto-incremental build number in my PHP-based web application.

Since I'm not compiling, but I'm using svn for source control, I thought that maybe each checkout could count as a build.

Am I right?

If so, how can I get the current svn revision number of the production server local copy via PHP?

If not, what would you say is the best method to put an auto-incremental build number in a web app?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

油饼 2024-11-09 08:54:26

很长一段时间没有使用 SVN,但这应该可以。

$var = '$Id:

SVN 在每次结账时都会替换 $Id:$

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

;

SVN 在每次结账时都会替换 $Id:$

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

Not used SVN for a long time, but this should work.

$var = '$Id:

SVN replaces $Id:$ on every checkout

Update: Seems, that $Rev:$ is more convenient.

;

SVN replaces $Id:$ on every checkout

Update: Seems, that $Rev:$ is more convenient.

[旋木] 2024-11-09 08:54:26

我认为 获取 SVN 中的最新修订号? 可能会回答您的问题!

I think Getting the last revision number in SVN? might answer your question!

°如果伤别离去 2024-11-09 08:54:26

我发现这个 How can I get the svn revision number in PHP?

有人说在部署脚本中你可以包含:

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

I found this How can I get the svn revision number in PHP?

Where somebody says that on the deployment script you can include:

cd /var/www/project
svn update
rm version.php
svnversion > version.php

To fill version.php with the current svn version.

Then, you include version.php where you need it.

Also, I found this, that seems to work without updating a specific file:

$path='path_to_your_project';
function get_svn_revision ($path)
{
    $cmd = 'svnversion -n ' . $path;
    $result = (int)exec ($cmd);
    return $result;
}

But since I didn't want to execute a command, I ended up querying /.svn/entries at the root of the project using:

$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;
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文