菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
2068
2

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

原创
05/13 14:22
阅读数 2508

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 了源代码,而不是从代码仓库上下载 压缩文件,想请问一下问题出在哪个环节?谢谢!

发表评论

0/200
2068 点赞
2 评论
收藏
为你推荐 换一批