我们将在本月开始一个新项目,我想就我们将实施的分支战略获得想法和意见。该项目为期 1 年,生产部署仅在项目结束时进行。我们将进行迭代开发(每次迭代 1 个月),因此这意味着我们将在每次迭代结束时将功能放到测试环境中以进行 QA 测试。我们的分支策略是:
主干 - 所有开发都将在主干上进行。功能分支 - 将根据需要创建主干分支,以开发大型功能,如果在主干 QA 发布分支上完成,可能会破坏这些功能 - 在每次迭代结束时,将创建一个主干分支。此分支(包括版本号)将发布到测试环境。此版本中发现的所有关键和阻塞错误都将在此分支上修复,并且必须将修复合并到主干。非关键/微不足道的错误不会在 QA 发布分支上得到解决,只会在主干中修复,因为 QA 发布分支将在下一次迭代结束后被丢弃,新的发布分支将在主干上创建。生产分支 - 这将是项目结束时最新的 QA 发布分支。这将被标记,并且所有生产错误修复都将在此分支上并合并到主干。这是正确的分支策略吗?还有什么我们没有考虑的吗?
我们正在使用 SVN。
谢谢!