Php 建立高效的开发流程
我正在为我的初创公司设置开发环境(PHP/MySQL)。我们使用三组服务器: LIVE—提供实际应用程序的服务器 测试-在实际发布之前提供测试版本 DEV-开发服务器 开发服务器运行SVN,每个开发人员都签出本地副本。每天结束时,完成的修复都会被检入,然后我们使用Hudson自动化构建过程,然后将其转移到测试中。然后,我们使用测试仪检查应用程序是否仍然正常工作,如果一切正常,则将其移动到活动状态。我对这个过程很满意,但我有两个问题:Php 建立高效的开发流程,php,mysql,hudson,Php,Mysql,Hudson,我正在为我的初创公司设置开发环境(PHP/MySQL)。我们使用三组服务器: LIVE—提供实际应用程序的服务器 测试-在实际发布之前提供测试版本 DEV-开发服务器 开发服务器运行SVN,每个开发人员都签出本地副本。每天结束时,完成的修复都会被检入,然后我们使用Hudson自动化构建过程,然后将其转移到测试中。然后,我们使用测试仪检查应用程序是否仍然正常工作,如果一切正常,则将其移动到活动状态。我对这个过程很满意,但我有两个问题: 您会建议我们如何进行本地测试-当每个开发人员添加新页面或更改
- 您会建议我们如何进行本地测试-当每个开发人员添加新页面或更改功能时,我希望他们能够测试他们正在做的事情。您是否只需要设置本地Apache和本地数据库,并让它们在自己的机器上进行本地测试
- 您建议如何处理数据层更改
- 为了使我们的开发过程尽可能的简单和高效,您还有什么建议吗
提前感谢每个运行自己的安装程序的开发人员,包括Apache和数据库 将数据库架构置于版本控制之下
可能您可以在测试数据库中保存(可能在单独的存储库中)一组小但具有代表性的数据。每天早上,您都会检查此测试数据库的最新副本,然后开始黑客攻击。当您更改模式时,相应地更新您的测试数据存储库。任何进行开发的人都应该有自己的本地环境。我使用Mac,所以我运行MAMP,这样我就可以在本地拥有自己的LAMP环境,并且独立于任何其他环境。这也让我知道,没有其他人在更改/使用与我相同的组件,并消除了任何可能的混淆。如果您是windows用户,还可以轻松安装LAMP堆栈的本地版本,如XAMP等。如果您将Linux作为桌面运行,您很可能已经知道如何安装LAMP以适应您正在运行的Linux的风格 数据库模式版本是个好主意。这也是我们使用的。除了版本控制下的模式之外,我们还向模式中添加了一个模式版本表,并保持更新,以便在需要比较时,能够快速地告诉production/qa/dev中的版本 至于数据层的更改,我建议做两件事
如何在版本控制中保持数据库模式?听起来真是个好主意——我以前从未见过这样做。我写了一篇关于它的文章:你也可以在这里读到更多: