【问题标题】:Development model for website using SVN使用SVN的网站开发模型
【发布时间】:2013-07-26 09:40:46
【问题描述】:

我正在为我的公司开发一个 Intranet 网站,目前正在使用 SVN 作为版本控制,主要使用“主干”进行所有开发。 大的新功能在分支中开发并在稍后合并到主干。

但是最近我们决定首先在指定的测试服务器上提供所有和任何更改,给每个人一周的时间来测试/验证这些更改,然后在没有发现异议/错误的情况下在生产服务器上提供它们.

暂时不考虑分支和开发模型,这给了我 3 个必须共存的不同“环境”:

  • 发展
  • 测试
  • 生产

问题是我在主干中不断开发,当一个块完成后,我想在测试服务器上激活它,然后在验证一周后,我也想在生产中激活它。

这是我提出的想法,但我想就这是否是正确的方法获得一些反馈。

我们的想法是继续在主干中进行“常规”开发,并使用功能分支进行重大更改,然后将其合并到主干中,这里没有更改。 然后我将复制 2 份主干,一份给branches/test,一份给branches/production。然后每次我向主干提交一些东西时,我都可以先对其进行挑选以进行测试,然后再进行生产。 这允许我将一些更改合并到生产中,同时保留其他可能尚未在测试中获得批准的更改。

这是一个好的前进方向吗? 提前致谢!

【问题讨论】:

    标签: web-services svn version-control


    【解决方案1】:

    这就是我们设置它的方式: 我们在主干上开发。 我们的开发工作是在我们本地的笔记本电脑上进行的,当它运行良好时,我们会签到。 然后我们在主干上部署到开发服务器,并在那里进行一些测试。

    我们也在主干上部署到测试服务器,但只有在我们看到它在开发服务器上运行之后,而不是测试中的代码已被批准用于生产。

    所以 Dev 是最近签入的,而 Test 通常也是最近签入的,但有时它是较旧的修订版。这两个都在主干上。

    当 Test 中的代码被批准用于 Prod 时,我们将创建一个标签,然后将该标签部署到复制的应用程序,确保源代码与我们期望的匹配,然后将该标签创建的应用程序部署到 Prod。

    如果测试中最终通过 QA 的代码不是主干中最新的,我们只需在修订号上创建标签。

    我们不经常使用分支,因为我们喜欢一次部署所有内容。但是有时我们会使用分支来实现主要功能 - 并且当一切就绪时,还有用于集成的工具。

    【讨论】:

      猜你喜欢
      • 2010-11-12
      • 1970-01-01
      • 1970-01-01
      • 2018-02-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多