您将什么部署到客户端SVN分支或标记

MOZ*_*LLA 2 svn tags branch release-management

不久前,我们使用Microsoft VSS作为我们的版本控制工具,并在每个版本结束后用于创建代码的分支,并将其部署到我们的客户端.

现在我们已经转移到SVN,最近有很多关于标签/分支的讨论,我们应该在开发特定版本后标记/分支我们的代码吗?

SVN实际上为此目的推荐"标签",但也建议不要对此进行任何更改,那么我们将在哪里为此版本提供令人发指的错误修复?

另外一件事就是创建标签和分支,将标签部署到客户端,并填写任何错误,修复将分支,然后再次标记:-(

其他人做什么?

Ste*_*fan 6

  1. 进行发布时,请为其创建标记.例如,发布1.1.0
  2. 如果您对该版本有错误修正/更改,请先从该标记创建一个分支,即"稳定分支",通常以".x"命名为最后一个版本号.例如,稳定-1.1.x
  3. 合并从trunk到bug的bugfix/change
  4. 将更改提交给稳定分支
  5. 一旦您认为稳定分支上的足够的错误修正/更改是为了证明新版本的合理性,请从稳定分支创建标记,例如release-1.1.1
  6. 继续在trunk上工作,将错误修正合并回稳定分支
  7. 重复3-6


Tim*_*Tim 5

在Subversion中它们是相同的 - 它们以相同的方式实现,结果是相同的(除了你的repo层次结构).它们只是对存储库的特定修订版的引用.没有真正的副本.当您开始处理分支(真正意义上的单词)时,您将在新位置使用该资源的新副本.

如果/您需要,您可以随时从标签中创建分支,因此没有理由创建分支和标记.

如果它可以帮助你保持一致,那么继续做下去,但实际上在你开始检查/修改分支之前它没有做任何事情.

(标签/分支都是用cp命令制作的)

  • 我讨厌承认这一点,但最后我意识到最好(最简单和最清晰)的方法是首先标记然后从标签分支(而不是从主干).但真正的删除在某些方面会很好,因为它们可以累积. (2认同)