php - 下载 php composer 依赖项的更好方法

标签 php build-process composer-php

我一直在 JAVA 中使用 maven,并开始使用 PHP Maven,最近我转向了 composer。

我的项目使用 Zend Framework 2,团队只检查应用程序代码,不检查供应商目录中的任何内容。这样做是为了避免冲突并且不让库在 SVN 下。

现在,每次开发人员设置他或她的新环境时,我们都会观察到, Composer 会从互联网上拉取依赖项。这需要很长时间。

是否有更好的想法/方法来加快速度或以不同的方式处理项目以避免此问题?

maven使用maven代理服务器,可以缓存下载,可以在网络中再次使用,但是我们有什么解决办法来处理这样的问题吗?

最佳答案

Composer 是一个非常年轻的项目,因此可能缺少一些东西,例如Maven 可以轻松协作。

您可以按照 composer docs 中的描述设置您自己的 Packagist 服务器.我相信 packagist 有一些缓存选项可以用来在 packagist 服务器上存储包。

您还可以做的是 fork 您的依赖项并将它们推送到公司拥有的私有(private)存储库。在您的 composer.json 中,您现在将只使用此依赖项,从而加快克隆速度。当然,这需要您维护所有不同的依赖项(尽管这可以通过脚本和 cronjob 来完成,从 github 存储库中提取数据并将其推送到您的公司所有)。

我也相信 composer 有一些代理选项,但我不认为这些是为了缓存依赖项。

最后的选择是开发这样的东西,作为 composer/packagist 的一部分或作为独立的。

关于php - 下载 php composer 依赖项的更好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14087605/

相关文章:

c# - 在 PHP 中通过 COM 访问 .NET 程序集

javascript - 使用 Ajax 访问 PHP 页面

build-process - 如何使用 CruiseControl.Net 构建忽略可执行文件的输出?

c++ - Incredibuild 不是很快

gradle - 如何在gradle build的配置阶段从xml文件中读取配置?

PHP Composer 包含定义了 "use namespace as"语句的文件,附加到每个文件

javascript - 通过在 php 中即时生成的浏览器缓存 JS 文件

php - 将变量声明为 PHP 类

php - 如何在 Jelastic 上运行(或者我应该运行)PHP Composer?

zend-framework2 - 使用 composer 安装组件 zf2