使用虚拟机进行开发

4

我最近被分配管理或开发环境的角色,包括:

  • 管理版本控制系统(Subversion),我们通常有一个主要分支,每6个月发布一次正式版本,一个维护分支,每2个月发布一次以修复用户发现的非重大错误,并且还有几个与错误相关的分支,这些错误不能等待维护版本的发布。
  • 管理我们的数据库,以便为代码的每个分支都有一个开发数据库

我们不久前开始使用版本控制系统,遇到了以下问题:

  • 同时在多个分支上工作的开发人员往往会错误地开发与错误数据库 (我们有大约15位开发人员)
  • 缺乏一个良好的策略来管理分支的发布到生产环境和向其他分支的传播
  • 缺乏一个良好的策略来管理与每个分支相关的数据库(即我们是否需要保留与生产环境对齐的脚本,然后再有一个脚本来使每个数据库用户符合分支的需求)

我考虑为代码的每个分支使用虚拟机(即一个包含Oracle Express数据库用户、具有正确设置的Coldfusion管理员,如数据源和开发工具,如IDE和Tortoise的虚拟机)。

我在寻找任何建议来帮助解决这些问题,因为我发现这个过程非常困难。我知道没有两个公司拥有完全相同的设置,但我欢迎任何帮助。

2个回答

1

我认为对于你来说最好的解决方案是开始使用持续集成应用于你的产品生命周期策略中。你可以在网上阅读相关资料:

希望这能帮到你,但是你的问题很难回答,因为每个公司的参数都不尽相同,你应该考虑聘请一位顾问来帮助你。他/她将需要来到你的公司并帮助你做出决策和实施。


嗨,谢谢你的回复。我认为聘请一位顾问是个好主意,但我之前曾向我的公司提出过这个想法,他们并不热衷...看来我得再向他们施加一些压力! - raven-king

0

我会先询问每个开发人员为什么会犯这种错误。如果一个开发人员最近犯了这个错误,那么让他们解释一下如何犯错以及未来可能有什么帮助。还要和最近没有犯过错误的开发人员交谈。

我假设你有一个带有Oracle和不同版本的数据库运行在使用不同端口号的服务器上。在这种情况下,您将创建一个新的数据库实例以配合每个分支,问题在于如何帮助开发人员在处理分支之前设置上下文。

Tortoise SVN是一个不错的工具,但也许在这种情况下最好有一种小型应用程序来执行检出,并从机器中删除Tortoise。该小型应用程序可以保持浮动窗口,显示当前活动的分支,并且可以处理检出和检入,以及确保使用正确的端口号。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接