运行 composer install --prefer-dist 安装自己发布的包,--prefer-dist 参数未生效

发布于 2022-09-11 22:27:34 字数 1686 浏览 19 评论 0

问题情景

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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

森末i 2022-09-18 22:27:34

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

久隐师 2022-09-18 22:27:34

后面那么大两个 from cache 呢。

composer clear-chache
琉璃繁缕 2022-09-18 22:27:34

大佬,我也是这样,难不成要从 gitee 迁移到 github

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文