suj*_*isd 6 php build-process composer-php
我一直在JAVA中使用maven并开始使用PHP Maven,最近我改用了作曲家.
我的项目是使用Zend Framework 2,团队只检查应用程序代码而不是供应商目录中的任何内容.这样做是为了避免冲突,而不是让SVN下的库.
现在,每当开发人员设置他或她的新环境时,我们都会发现,作曲家会从互联网中提取依赖关系.这需要相当长的时间.
有没有更好的想法/方法来加快速度或以不同的方式处理项目以避免这个问题?
maven使用可以缓存下载的maven代理服务器,并且可以再次在网络中使用,但我们是否有任何解决方案来处理这样的问题?
在 PHP 中,有一个现有的选项可以在本地运行像 repo 这样的作曲家,它被称为 Satis(它实际上是由 Composer 提供的): https: //github.com/composer/satis
因此,您可以在服务器上本地运行它,并指示您的 Composer 将其用作默认的 Composer 存储库,Satis 确保所有已安装的软件包和不同版本都以 ZIP 文件的形式缓存在磁盘上,因此与始终从网站下载相比,可以更快地检索它们互联网。
你可以这样做:
{
"repositories": [
{
"type": "composer",
"url": "http://satis.example.org/"
}
],
"require": {
"company/package": "1.2.0",
"company/package2": "1.5.2",
"company/package3": "dev-master"
}
}
Run Code Online (Sandbox Code Playgroud)
这还允许您拥有私有包和库,而无需在 GitHub 上公开它们。
另一个巨大的优势是,当 GitHub 由于某种原因发生故障时,您仍然可以部署,因为所有依赖项都缓存在本地。这是假设您没有向该版本添加新的、不存在的软件包。