我目前工作的组织使用SVN开发PHP应用程序。我们的开发周期开始很简单,做一个提交使用post-commit钩子来更新web根目录,以便立即查看更改。比起我们遇到的一个问题,开发特性阻碍了错误修复,并阻止了固定文件被移动到生产环境,并且有时会导致prod服务器出现问题。SVN网页开发周期问题
所以我介绍了一个“释放分支”架构,这意味着所有的全版本都复制到自己的分公司,所以在这个分支与“长期”的发展发生生产所需的所有变化发生于躯干。第一次启动的想法是只做修复并让开发人员负责将自己的更新移回到主干,但是在开发人员盲目合并导致数据丢失的更改以及持续开发“即时发布项目”之后发布分支这种方法被放弃了。
知道我面临的是一个不同步的分支(因为有些人没有“获得”干线/分支的概念,并且正在干线上开发),其中的变化合并到来自私人分支的干线中,合并来自当前版本分支的过去一个月的所有更改时可能会丢失更多代码。
我不得不重新开始和执行Web开发的适当开发/发行周期的机会。 SVN似乎是面向“发布”开发(二进制应用程序),在这种情况下,我们可以整整一年不移动完整的软件包到生产环境。
有了这样的背景,这里是我的问题:什么 Web开发SVN周期和/或模式你会推荐这种情况呢? 这是否需要一个完整的方法学改革,或者我只是缺少一些简单的东西?
感谢您的任何想法!
>其更改必须同时提交到发布标签和中继。 提交标签?就个人而言,我认为最好将修复只提交给主干,并在所有问题得到解决时重新进行标记。通常,标签是某个时刻代码库状态的“只读快照”,并且不能修改。 – 2009-11-27 16:18:07
您遇到的问题是,如果另一名开发人员在标签被剪切后将其项目合并到主干中,然后重新标记,则他们的项目现在处于发布阶段。 – 2009-11-27 16:23:54
这可以缓解运行到“立即发布项目”和“开发功能”之间的冲突的问题,OP描述了 – 2009-11-27 16:27:21