【发布时间】:2009-11-27 15:44:05
【问题描述】:
我目前工作的组织使用 SVN 开发 PHP 应用程序。我们的开发周期一开始很简单,使用 post-commit 钩子进行提交更新 Web 根目录,以便立即查看更改。然后我们遇到了一个问题,即开发功能妨碍了错误修复,并阻止了已修复的文件被移动到生产环境中,有时还会导致产品服务器出现问题。
所以我引入了“发布分支”模式,这意味着所有完整版本都复制到自己的分支中,因此对生产所做的所有更改都需要在此分支中进行,而“长期”开发则在主干上进行。最初的想法是只做修复,让开发人员负责将自己的更新移回主干,但在五个开发人员盲目合并更改导致数据丢失的实例之后,以及不断开发“即时发布项目”上发布分支这种方法被放弃了。
知道我面临一个不同步的分支(因为有些人没有“理解”主干/分支的概念,而是在主干上开发),更改从私有分支合并到主干,从而创造了潜力从当前发布分支合并上个月的所有更改时丢失更多代码。
我有机会重新开始并执行适当的 Web 开发开发/发布周期。 SVN 似乎正朝着“发布”开发(二进制应用程序)的方向发展,在这种情况下,我们可以在不将整个软件包投入生产的情况下进行整整一年。
在这样的背景下,这是我的问题: 对于这种情况,您会推荐什么 Web 开发 SVN 循环和/或模式? 这是否需要对方法进行全面改革,还是我只是缺少一些简单的东西?
感谢您的任何想法!
【问题讨论】: