繁体   English   中英

如何使用PHP在部署期间处理库依赖项?

[英]How do you handle library dependencies during deployment using PHP?

这是一个关于PHP的问题。 我想知道:在部署到(生产)服务器时,如何确保所有必需的库都与应用程序打包在一起?

一个更具体的例子:我有一个在Zend Framework上运行的应用程序,每次我将应用程序滚动到服务器时,部署过程都会在该系统上创建一个全新的“安装”。 因此,我需要将Zend Framework与我的应用程序捆绑在一起,然后将文件一起复制到正确的位置(它会自动完成)。 目前,我正在使用svn:externals定义在部署期间从Zend的SVN系统中获取文件,但是,我不想依赖该SVN,我也不想在每次部署时将流量放在外部SVN上。

在Java世界中,我习惯使用Maven来处理使用中央工件存储库的东西。 我知道有一个Maven4PHP版本,但是,我更喜欢基于PH​​P的解决方案。 另外,我不相信PEAR是一个很好的方法,因为它并没有真正满足我将应用程序(包括libs)捆绑到单个可部署中的要求。

是否有一些我不知道的工具? 或者你有什么伟大的技术我应该知道吗?

非常感谢您的帮助!

迈克尔

有一个名为Phing的构建系统,它是用PHP编写的,基于Apache Ant。

我个人可以很好地与外部人生活在一起。

我认为供应商分支可以很简单地解决你的例子中的问题,但如果你也不喜欢大型存储库,我建议你继续观看像作曲家这样的现代玩具及其解决的问题 (也许是phark ,我从未听过之前:))

它尚未准备好生产,但您可能需要关注Phark项目。 它是PHP的Bundler端口。

在查看简化外部依赖管理幻灯片时,我遇到了一个名为pantr的工具,它可以用作PEAR安装程序。 pantr as PEAR installer ,允许您在项目特定文件中指定依赖项。

文章Version Control!= Dependency Management提供了有关使用名为Pyrus的新PEAR安装程序的一些信息

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM