Composer install --prefer-dist,--prefer-dist 参数未生效

composer 在安装扩张包的时候提供了--prefer-dist--prefer-source 这两个参数,简书上的文章composer --prefer-dist 和 --prefer-source 的区别 写的很清晰。

--prefer-dist 会从github 上下载.zip压缩包,并缓存到本地。下次再安装就会从本地加载,大大加速安装速度。但她没有保留 .git文件夹,没有版本信息。适合基于这个package进行开发。
--prefer-source 会从github 上clone 源代码,不会在本地缓存。但她保留了.git文件夹,从而可以实现版本控制。适合用于修改源代码。

我找了一个扩展(psr/log)测试了一下,确实如此。

但我遇到的问题是 自己开发的扩展包发布到packagist之后,指定 --prefer-dist 依旧会从git上clone源代码

我的测试环境

目标扩展包

发布的扩展包

目标扩展包代码仓库

扩展包代码仓库

测试项目的 composer.json 文件配置

{
    "name": "vagrant/demo-app",
    "authors": [
        {
            "name": "caojianfei",
            "email": "jackcjf@163.com"
        }
    ],
    "require": {
        "caojianfei/composer-lib-example-one": "^1.0"
    }
}

composer 命令

composer install --prefer-dist

vagrant@homestead:~/Code/practice/demoApp$ composer install --prefer-dist

Loading composer repositories with package information

Updating dependencies (including require-dev)

Package operations: 1 install, 0 updates, 0 removals

- Installing caojianfei/composer-lib-example-one (v1.0.1): Cloning 9f79c28b09 from cache

Writing lock file

Generating autoload files

从结果看出,composer 依旧 clone 了源代码,而不是从代码仓库上下载 压缩文件,想请问一下问题出在哪个环节?谢谢!

最佳答案

这个问题在将代码仓库从gitee迁移到github之后就没有了。 :joy: :joy: :joy:

4年前 评论
讨论数量: 1

这个问题在将代码仓库从gitee迁移到github之后就没有了。 :joy: :joy: :joy:

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!