avto-dev/app-version-laravel

Laravel应用程序版本控制

v3.7.0 2024-04-26 10:08 UTC

This package is auto-updated.

Last update: 2024-08-26 10:51:47 UTC


README

Laravel

为Laravel应用程序提供AppVersion

Version PHP Version Build Status Coverage Downloads count License

screenshot

图片来自antonioribeiro/version存储库

Laravel没有包含与应用程序版本一起工作的机制,此软件包可以修复这个缺陷。

安装

使用以下命令通过composer安装此软件包:

$ composer require avto-dev/app-version-laravel "^3.0"

需要安装composer如何安装composer)。

您需要修复软件包的主版本。

之后,您应该使用以下命令“发布”配置文件(./config/version.php):

$ php artisan vendor:publish --provider="AvtoDev\\AppVersion\\ServiceProvider"

使用方法

此软件包提供应用程序版本管理器(AppVersionManager)和

  • 版本值存储库(版本数据的抽象层)
  • 存储库驱动程序(也称为“工厂”——它们创建配置的存储库实例)

您可以编写自己的实现,并使用它们(只需正确的配置即可)。

内置的“存储”类型

  • 包含版本定义的普通文件;
  • 应用程序配置文件(默认为version.config);
  • CHANGELOG.md文件(提取最后一个定义的版本值)。

如果想要通过DI访问版本管理器,请请求AvtoDev\AppVersion\AppVersionManagerInterface

<?php

namespace App\Console\Commands;

use AvtoDev\AppVersion\AppVersionManagerInterface;

class SomeCommand extends \Illuminate\Console\Command
{
    /**
     * The console command name.
     *
     * @var string
     */
    protected $name = 'some:command';

    /**
     * Execute the console command.
     *
     * @param AppVersionManagerInterface $manager
     *
     * @return void
     */
    public function handle(AppVersionManagerInterface $manager): void
    {
        $manager->version(); // e.g.: 1.0.0-alpha2
    }
}

Artisan命令

Blade

Blade编译器允许以下指令

Application version: @app_version
Build version: @app_build
Application version hash: @app_version_hash

测试

对于软件包测试,我们使用phpunit框架和docker-ce + docker-compose作为开发环境。因此,在克隆存储库后,只需在终端中写入以下内容:

$ make build
$ make latest # or 'make lowest'
$ make test

变更日志

Release date Commits since latest release

变更日志可以在此处找到

支持

Issues Issues

如果您发现任何软件包错误,请在此存储库中创建一个问题

许可证

这是一个开源软件,根据MIT许可证许可。