为了向旧版本提供错误修正而创建分支称为发布分支.您应该在trunk上开发错误修复程序(因为它们需要适用于所有新版本吗?).从那里,您将它们合并回仍然支持的版本.这意味着当不再支持版本1时,您将停止将错误修复程序合并回它.有关详细信息,请参阅文档.
如果trunk中的错误修复程序无法合并到分支,则解决方案是创建"backport分支".在这里你要么部分地合并修复程序,如果代码太不同,则部分重写相同的修复程序.它还建议记录您通常会执行的合并来解决问题,因此合并跟踪可以帮助您查看是否修复了问题.
如果您正在修复/branches/1.2.x,Subversion项目使用的命名约定是创建一个名为1.2.xr [REVNUM]的后端分支,其中REVNUM表示您正在向后移植的修订版,或1.2.x-issue [ ISSUENUM],其中ISSUENUM表示您正在修复的问题.
完成后端修复后,可以将其合并到发行版中
svn checkout .../branches/1.2.x myproduct-1.2.x
svn merge --reintegrate .../branches/1.2.x-r123 myproduct-1.2.x
Run Code Online (Sandbox Code Playgroud)
重新集成分支后,应删除分支.
您应该首先为您的版本 1 创建一个“标签”,该版本是您产品的发布版本。该项目的版本 2 将成为主干的延续,而不是版本 2 的分支。您需要创建分支的唯一原因是对(发布的)版本 1 进行错误修复。您为新版本所做的所有操作都将在主干上完成,除非您有理由不这样做。