这个话题说大略大略,也难也难,由于这跟团队的管理,合营等都有直接关系,以是php项目的支配方案也都会有很多不同。
我这里大略记录一些,大家可以选择适宜自己的利用。

后面几个都能搜到,本来发了一篇带链接的,这样大家不用麻烦去找,创造一个都不给推举。
没办法,去掉链接,重新发一下吧。
找不到的请在评论区回答,我会回你地址。

1.利用git的钩子机制

php项目发布php项目标主动宣布安排计划 Bootstrap

这个方案事理很大略,在代码完成之后,哪个commit想要发布,在commit message中加上自己定义好的关键字,让钩子去识别,只要创造它,就知道是要支配了,然后分支代码就会被pull到指定目录。
缺陷是支配一些不用composer办法的代码还好,如果用这个的话,在第三方包更新的过程中势必会影响线上程序的运行。

2.用rsync的方案

也便是说git钩子做的事交给另一个shell去干,由支配职员主动去掌握什么时候要支配,可以等到程序完备测好之后再按下这一键。
最后代码会被同步到相应目录。
缺陷与方案1相同。

以下方案还是利用一些当代化工具人性化、智能化一点

3.rocketeer

试用过这个一段韶光,目录构造还比较满意,对composer包之类的运用支配也支持,当时碰着两点比较头疼的问题,弃之。
一个是这个运用开拓中利用了一个第三方包,不支持php7,以是只能利用php5的程序去运行rocketeer,比较麻烦。
后来又碰着想分别支配开拓做事器和测试做事,当时两个都在同一台做事器,它的配置不是很好搞这个。

此运用的配置也相对麻烦,找了很多资料,用的比较少。
官方的文档配置,没看到便捷的配置办法,可能是没看仔细,在这方面花了不少韶光。
有兴趣的,私信我,发你参考地址吧

勾引式创建配置

$ rocketeer ignite

4.Deployer

文档清晰,配置方便,PHP7没问题,配置多做事器等等都OK。
唯一对这个不理想的是,它支配之后的目录是按序号从1开始排的,没有rocketeer那个按发布韶光做目录好,不过这个无伤大雅。
这个也是我目前在用的,相对来说,这个对小项目的支配是相称快速又方便的。

5.Walle

发布的掌握更繁芜一些的工具,职员的权限掌握等都有了,发布的记录等等。
麻烦的是先安装一套这个别系,不熟习的话,在这上面须要花些韶光管理它,至少要保持正常运转。
小团队想偷

6.Docker打包整体项目支配

这就更繁芜一些了,想理解的,须要先把Docker用好,再考虑后面的。
过程比较繁芜,这里就不详述了。

原创内容,转载请标注出处,感激。