【发布时间】:2011-05-21 07:43:12
【问题描述】:
我将描述我想要实现的场景。我对这是否可以使用 Subversion 感兴趣:
- 我正在开发一个向公众发布的应用程序。
- 它正在使用 Jenkins CI 服务器构建并自动上传到 Web 服务器以供下载。
- 我将主要的开发工作保留在 trunk 上。主要版本来自主干,但并不经常(每月 2-3 个)。
- 发布后,我希望能够快速修复任何错误,因此我有一个错误修复分支,它是从最新的主要版本分支出来的。在这里,热修复程序可以很快(一天内)得到解决和发布。
- 在每个主要版本之后,我希望该错误修复分支以某种方式重新定位到主干。换句话说,我不想不断创建新的发布分支,出于实用性原因:CI 服务器保持相同的 SVN URL,不需要大量结帐等。
问题:
- 是否可以在每次发布后无需从主干合并到错误修复分支的情况下进行变基?由于我对代码进行了大量重构,因此我担心各种树冲突。
- 做起来简单吗?
- 是否有任何替代策略?我知道我可以切换逻辑并将主要开发工作保留在分支上,但我想避免这种情况,因为大部分代码更改都发生在主干上,这需要较少的合并工作。
- 对于这种情况,Mercurial 是更好的选择吗?
【问题讨论】:
标签: svn version-control mercurial