我想对最小/样板的专业 PHP 团队开发环境达成普遍共识。我在网上的任何地方都找不到这些信息。在开源世界中,有很多选择和做事的方法很多,但我还没有找到任何适用于基础设施/管道方面的通用最佳实践。
考虑一个拥有 5-10 名开发人员/设计师团队的小商店,他们正在开发 LAMP CRUD 应用程序。他们需要管理开发、登台和生产构建。他们想要高质量的软件,而且他们不能互相踩着脚趾试图把事情做好。部署需要简单快速。有时会有修补程序。将生产服务器回滚到以前的版本需要同样快。
需要考虑的事情是:
源代码管理(SVN、git、Hg)
数据库模式/数据持续集成,与源代码修订相关。这是我特别感兴趣的一个。
单独的开发环境(例如,每个开发人员都有一个开发环境的 VMware 实例来修补(数据库服务器、Web 服务器、代码、数据等))
管理中央开发、登台和生产构建
生产部署(例如 tar 球、.rpm/.deb)
自动化测试(例如 SVN 提交挂钩、用于较慢测试的夜间 cron 测试)
团队沟通(错误跟踪、内部文档、irc/im 等)
我已将此开放给社区编辑,因此请随时编辑/添加。理想情况下,有人可以访问此页面,几个小时后,他们的团队就可以开始开发了。