tremby/laravel-git-version

获取应用程序当前git版本的辅助工具

v1.2.2 2020-04-09 13:16 UTC

This package is auto-updated.

Last update: 2024-09-18 04:15:09 UTC


README

一个获取项目当前git版本的辅助类。

期望存在一个包含版本字符串的 version 文件在你的项目的 base_path() 中,或者 git 二进制文件可用。

框架版本

此包与Laravel 4和5以及Lumen兼容。

安装

在你的Laravel/Lumen项目中要求它

composer require tremby/laravel-git-version

可选包

如果可用,此模块使用Symfony的Process组件,否则回退到 shell_exec。因此,如果你的部署环境禁用了 shell_exec,你可以通过安装 symfony/process 来解决这个问题。

使用

你可以用以下方法获取git版本字符串

\Tremby\LaravelGitVersion\GitVersionHelper::getVersion()

或者你可以用以下方法获取你的应用程序名称和版本号,如 my-project/1.0

\Tremby\LaravelGitVersion\GitVersionHelper::getNameAndVersion()

应用程序的名称是从 Config::get('app.name', 'app') 中获取的,因此你可以在你的 config/app.php 文件中配置它或将其保留为默认的 app

推荐使用模式

确保你的git标签已推送到服务器,以便正确描述版本。

在开发和可能是在测试环境中,允许版本自动确定(这是通过 git describe 实现的)。

作为你的生产部署过程的一部分,编写一个 version 文件(可能通过类似 git describe --always --tags --dirty >version 的命令来完成,因为这个是包会运行的命令)。当此 version 文件存在时,包将使用其内容而不是执行 git,从而节省一些处理器和I/O时间。

/version 添加到你的 .gitignore 文件中,以确保你的工作树保持干净,并且你不会意外地提交它。

查看

提供了一个视图,它仅输出一个带有 getNameAndVersion() 返回值的HTML注释。我喜欢将其包含在项目的主体布局模板中。

要使用此功能,请通过将其添加到你的 config/app.php 文件中来安装服务提供者

'providers' => [
    ...
    Tremby\LaravelGitVersion\GitVersionServiceProvider::class,
],

然后视图可用

@include('git-version::version-comment')