首页  >  文章  >  后端开发  >  PHP项目的标准部署方式是怎样的?

PHP项目的标准部署方式是怎样的?

WBOY
WBOY原创
2016-06-06 16:45:251054浏览

请各位同学介绍一下贵厂PHP项目的部署方式。

感兴趣的点主要有这么几个

  1. 如何维护第三方源码?用什么方式保证依赖关系?是否有标准的依赖关系维护方式?
  2. 如何维护第三方lib?特别是C模块?
  3. 如何做PHP本身版本升级?升级的前期准备工作是怎样的?

回复内容:

我来回答第一个问题吧。PHP 的世界里有 Composer(getcomposer.org/),这个玩意儿你可以联想成 npm 之于 Node.js,gem 之于 Ruby。它有一个官方的包仓库 Packagist(packagist.org/)。

一般的项目部署也有相关的工具,例如 phing(phing.info/),可以认为是 Ant 之于 Java。

举例来说,现在我做的项目用的是 Github Jenkins 的方案,每个开发人员从主仓库 fork 到自己账户,然后提交 Pull Request。Pull Request 会触发 Jenkins 的 Pull Testing,将改动部署到 QA 环境中,然后该怎么测试就怎么测试吧。部署脚本的工作主要包括清理原先的项目文件和数据库,取回代码库中最新的版本,跑 phing(包括数据库的 Migration、运行 PHPUnit, PHP CodeSniffer等一系列QA工具)等。最终部署到生产环境的过程是类似的。 团队刚开始的时候,公司给了几台机器,让我们开始干活了:(

一开始是开发完之后验收通过直接到服务器git pull,好吧,我也承认居然是我能做出这样的事情来。怎么能忍呢?这么low的事情我怎么做得出手呢?然后就开发了一个上线部署系统 Walle 瓦力 - web部署系统,另外,已经有其它公司也部署使用了。git项目地址:meolu/walle-web · GitHub,欢迎fork试用、star。

至少开发、测试、上线流程,详见技术团队代码管理和部署
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn