我正在为我的公司工作一个内部网网站,目前正在使用SVN作为版本控制,主要使用“主干”进行所有开发。在分支中开发了大的新特性,并随后将其合并到主干中。
然而,最近我们决定首先在指定的测试服务器上提供所有和任何更改,给每个人一个星期的时间来测试/验证这些更改,然后在没有发现反对/bug的情况下在生产服务器上提供这些更改。
现在,将分支和开发模型排除在外,这给了我三个必须共存的不同“环境”:
问题是,我在主干中进行了谨慎的开发,当一个块完成后,我想在测试服务器上激活它,然后在经过验证的一个星期之后,我也想在生产中激活它。
这是我的想法,但我想得到一些反馈,这是否是正确的做法。
这样做的目的是继续在主干中进行“常规”开发,并使用特性分支进行大的更改,然后这些更改将随后合并到主干中,这里不会发生任何更改。然后我将复制两份后备箱,一份到branches/test,一份到branches/production。然后每次我向后备箱提交一些东西,我就可以先对它进行测试,然后再进行生产。这允许我合并一些对生产的更改,同时保留其他可能尚未通过测试的更改。
这是个好办法吗?提前感谢!
发布于 2013-07-26 09:53:04
这就是我们如何设置它:我们在后备箱上发展。我们的开发工作是在本地的笔记本电脑上进行的,当它工作得足够好时,我们就可以登记了。然后我们在主干上部署到Development,并在那里进行一些测试。
我们也在主干上部署到测试服务器,但只在看到它在Dev服务器上工作之后,而不是在Test中的代码被批准用于prod的情况下。
因此,Dev是最新签入的,而Test通常也是最近的,但有时它是一个较旧的版本。这两个都在干线上。
当Test中的代码被批准用于Prod时,我们将创建一个标记,然后将标记部署到复制的应用程序中,确保源代码符合我们的预期,然后将标记创建的应用程序部署到Prod。
如果测试中的代码(最终通过QA )不是主干中的最新代码,我们只需在修订编号上创建标记。
我们不经常使用分支,因为我们喜欢同时部署所有的东西。但也有一些时候,我们使用分支的主要功能-和有工具集成时,它已经准备好了。
https://stackoverflow.com/questions/17878003
复制相似问题