composer 使用技巧

引用 git 上的代码库

本文使用 composer v2
开发时我们会使用公司 git 上的库,最简单的方式是将公司的 git 库信息配置再 repositories 段中。

"require": {
    "laravel/lumen-framework": "^7.2",
    "phpoffice/phpspreadsheet": "^1.19",
    "game/your_project.git": "dev-master"
},
"repositories": [
    {
        "type": "git",
		"url": "git@git.your-corp.net:dept/your_project.git",
        "only": ["game/mgsc"]
    }
]

composer 默认最后使用 packagist 库,因此 repository 的意义是优先在我们定义的库中寻找,找不到再去 packagist 库中寻找,详见 repository-priorities。
为了优化过程,我们给我们的 repository 加入 only 属性,显示声明我们的 repo 只包含声明的库。
如果需要从多个 git 引用库,就需要依次配置多个 repository,并设定他们的优先级。

其中最关键的是,我们的 git 中的库必须配置好 composer.json,这样 composer 才能确定是否找到离职正确的库:

{
    "name": "game/your-project",
    "type": "project" // 或者 "library"
    "require": {
        ......
    }
}

其中最关键的就是 name 属性,composer 在引用 your-project 之前首先会检查这个名字是否匹配。

posted @ 2022-04-05 11:33  汽酒吧  阅读(49)  评论(0)    收藏  举报