tomzx / php-semver-checker-git
PHP语义化版本检查器for GIT
Requires
- php: >=7.3
- klaussilveira/gitter: dev-php-semver-checker
- symfony/console: ^4.4|^5.1
- tomzx/php-semver-checker: ^0.15.1
- vierbergenlars/php-semver: ^3.0.2
Requires (Dev)
- mockery/mockery: ^1.4.4
- phpunit/phpunit: ^9.5.10
This package is auto-updated.
Last update: 2024-09-14 20:26:58 UTC
README
PHP语义化版本检查器for git
是一个控制台/库,允许您使用GIT检查一组源代码的“之前”和“之后”。
命令行实用程序将使用现有的 git
仓库来比较更改集,使用任何 git checkout
可接受的(sha1,分支,标记)。它将以 detached
模式检出,以避免污染您的分支列表。
注意 强烈建议您不要在不想丢失的任何存储库上直接运行此程序。请先备份它,然后在该副本上运行 php-semver-checker-git
。
入门
由于这仍然是一个alpha包,不建议直接将其包含在您的composer.json中。但是,有几种方法可以使用此工具
- 推荐方法 下载最新的 .phar构建。请注意,.phar构建通常不如以下方法前沿。
php composer.phar create-project tomzx/php-semver-checker-git --stability=dev
将在您的当前工作目录中克隆一个新的php-semver-checker-git文件夹git clone https://github.com/tomzx/php-semver-checker-git.git
并在新建的目录中运行php composer.phar install
请参阅示例部分以了解如何使用此工具的示例。
构建 php-semver-checker-git.phar
首先,确保您已安装 box。然后,在基本目录中,您可以运行以下命令,这将生成 php-semver-checker-git.phar
文件。
box build
使用 php-semver-checker-git
与 GitHub actions
将 php-semver-checker-git
添加到您的构建过程非常简单,并且可以在 GitHub actions
日志中获取一个很好的报告。在 .github/workflows/
目录下的文件中,添加以下内容
name: Continuous integration on: [push] jobs: build: runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v2 with: fetch-depth: 0 - name: Setup PHP uses: shivammathur/setup-php@v2 with: php-version: ${{ matrix.php }} tools: composer:v2 coverage: xdebug # Your own CI configuration goes here - name: Evaluate semantic versioning run: | wget https://psvcg.coreteks.org/php-semver-checker-git.phar php php-semver-checker-git.phar suggest -vvv --include-before=src --include-after=src --details --allow-detached
为了简化上述对 php-semver-checker-git
的调用,我们建议您在项目的根目录中创建一个 php-semver-checker-git.yml
配置文件。在其中,您可以放置以下内容
allow-detached: true details: true include-before: src include-after: src
使用此配置文件,您可以更新之前创建的配置文件
之前
# Your own CI configuration goes here - name: Evaluate semantic versioning run: | wget https://psvcg.coreteks.org/php-semver-checker-git.phar php php-semver-checker-git.phar suggest -vvv --include-before=src --include-after=src --details --allow-detached
之后
# Your own CI configuration goes here - name: Evaluate semantic versioning run: | wget https://psvcg.coreteks.org/php-semver-checker-git.phar php php-semver-checker-git.phar suggest -vvv
示例
比较两个提交(没有语义化版本)
# arguments are: before-commit/branch/tag after-commit/branch/tag
php bin/php-semver-checker-git compare v1.6.4 v2.0.0 --include-before=src --include-after=src
将HEAD与您的最新语义化版本标记进行比较
php bin/php-semver-checker-git suggest --allow-detached --include-before=src --include-after=src
注意:--allow-detached
在您在 GitHub actions
或任何其他持续集成服务上运行此命令时非常有用。当在特定提交上执行检出时,这使得 HEAD
成为 detached
。如果不传递此选项,则命令将终止。这是因为在 suggest
命令完成后,不可能恢复原始 detached
分支。
将HEAD与特定标签约束进行比较
php bin/php-semver-checker-git suggest --allow-detached --include-before=src --include-after=src --tag=~5.0
注意:--tag
支持任何语义化版本约束,如 <
,<=
,>=
,'>',~x.y.z
,^x.y.z
x.y.*
。