zoukankan      html  css  js  c++  java
  • 对以内部 git 仓库为 composer 依赖的 package,加上版本号

    现实问题

    之前同事做了一个 composer package,做为公司大量 laravel 项目的通用模块。

    但是,在实际使用中,每个项目对改 package 的依赖版本是有所不同的。否则 composer update 会默认拉取最新的 dev-master 中的代码。

    术语

    VCS Version control systems (VCS)

    composer 依赖的 package 版本号来自哪里

    实际上就是 VCS 中的版本号,例如,git 打的 version tag。

    $ git tag
    v1.0
    v1.0.1
    v1.0.2
    

    composer 在识别 version 的时候,会自动过滤掉字母 ‘v’ 的前缀,所以,在打 tag 的时候,加不加 v 都是可以的。当然为了阅读方便,还是加上好。

    解决方法

    打 tag

    git tag -a 'v2.0.0'
    

    在 composer.json 中,除了要指明 git 项目地址之外,还需要在 require 中指定对应的版本号。

    {
        "repositories": [
            {
                "type": "vcs",
                "url": "https://github.com/igorw/monolog"
            }
        ],
        "require": {
            "monolog/monolog": "2.0.0"
        }
    }
    

    再执行

    composer update monolog/monolog
    
    Updating monolog/monolog (dev-master cd8c225 => v2.0.0):  Checking out cd8c225955
    

    参考

    https://getcomposer.org/doc/articles/versions.md

  • 相关阅读:
    遭遇奸商(主板篇)
    空调匹数与房间制冷时对应的适用面积
    MDIHelp!窗口BUG
    数据库主键设计之思考(转)
    显卡功耗表(转)
    PowerBuilder中的几种通用类
    PowerBuilder常用技巧
    当adobe flash player不能安装时
    vue常用语法
    简单的数据库命令
  • 原文地址:https://www.cnblogs.com/sgm4231/p/10196103.html
Copyright © 2011-2022 走看看