Subversion - 分支和合并到发布版、稳定版

分支是一种拥有 2 组或者更多组源代码的方法,每组都有自己的开发,但最终将它们合并到主干中。

例如,在大多数开发中,我们通常有“开发”和“发布”版本。
顾名思义,“开发”版本用于开发和测试。
但是“发布”版本将是推出用于生产用途的最终版本。
对于此示例,“发布”将是主干,“开发”将是分支。

它看起来像这样:

web_blog(repository)
   |
   +release
   |  |
   |  +front_end
   |  |
   |  +engine
   | 
   | 
   +development
      |
      +front_end
      |
      +engine

要创建此层次结构:

cd /home/user/svn_repositories
svnadmin create web_blog
svn mkdir file:///home/user/svn_repositories/web_blog/release
svn import /home/user/web_blog_initial_source_code \
file:///home/user/svn_repositories/web_blog/release
svn copy file:///home/user/svn_repositories/web_blog/release \
file:///home/user/svn_repositories/web_blog/development

最后一个命令实际上将“release”目录复制为 subversion 存储库中的“development”目录。

通常,代码分支和合并的循环如下所示:

  • 要在“开发”分支上工作,请从开发分支进行通常的检出,例如
svn checkout file:///home/user/svn_repositories/web_blog/development
  • 然后处理“开发”分支工作副本中的代码
  • 像往常一样提交,例如
svn commit -m "The codes are ready for production"
  • 测试 devel 分支中的代码,直到它稳定并准备发布
  • 当代码准备好与发布主干合并时,从“发布”主干中检出一个副本,然后将其 cd 放入其中。确保当前目录位于“发布”工作副本的根目录中!
  • 将“发布”代码与“开发”代码合并,例如
svn merge file:///home/user/svn_repositories/web_blog/development
  • 要查看文件更改的内容:
svn status
  • 最后,提交合并,例如
svn commit -m "Merging the development codes"

通常,重复步骤 2 以获得进一步的开发周期。

日期:2020-06-02 22:17:17 来源:oir作者:oir