我正在一个项目中,我们使用mySQL数据库在Zend上开发php,项目即将到达需要不仅对实际代码而且对数据库使用版本控制的程度。
我们也得到了一个好的生产服务器(实际的生产服务器将是一个测试服务器)。
所以我想知道你们是否认为标准化程序员使用的IDE是一个好主意,并让他们在他们的盒子里安装apache / php / mySQL来测试代码,从而在每台计算机上都有一个开发人员环境,测试服务器和生产服务器。
如果是这样,你会为这个过程的每个部分推荐什么设置,特别是mysql版本控制(我从未这样做过)以及如何进行部署?
我知道这是一个非常大的问题,而且大多数问题已在不同的问题中得到解答,但我想要一个全球性的答案,关于如何更快,更好(更难和更强)的设置以及我们有多少时间停止编程实际上让所有这些工作! (是的,聘请这个主题的专家几乎是一个禁忌)
谢谢!
答案 0 :(得分:8)
不,我不会强迫所有开发人员使用IDE标准化。您应该标准化编码风格,而不是IDE。
在开发人员的计算机上安装PHP / Apache / MySQL是个好主意。您可能遇到的唯一问题是开发人员的计算机可能没有与测试和生产服务器完全相同的配置/运行时环境。使用虚拟映像可以解决这个问题。
就MySQL版本控制而言,将您的架构放在源代码管理系统(CVS,SVN,Perforce等)中。要处理更改,您可能需要查看Rails迁移以获取灵感。
部署是一个很大的问题。我只能说你可以使用大量的工具。 Capistrano,Phing等
答案 1 :(得分:1)
您使用MySQL版本的东西是用于创建,更改和加载数据库的DDL和DML SQL脚本。 “敏捷数据库”的Scott Ambler对于如何做到这一点有一些很好的想法。
如果您拥有一个每个人都可以使用的IDE,那么标准化IDE是一件好事。但我认为无论你是否有标准IDE,版本控制都是必要的。
在同一台服务器上进行测试和生产?我认为这是一个坏主意。它们应该相同但是分开。
答案 2 :(得分:0)
所以我想知道你们是否认为标准化程序员使用的IDE是一个好主意,并让他们在他们的盒子里安装apache / php / mySQL来测试代码,从而在每台计算机上都有一个开发人员环境,测试服务器和生产服务器。
是的,这是个好主意,这就是我们做我们所做的事情。