【发布时间】:2010-12-29 09:11:10
【问题描述】:
在我们公司,我们正在开发一种由不同 C/C++ 模块组成的产品。理想情况下,每个层和模块应该由不同的团队分别开发并独立测试。目前,我们已经将每个模块分成了自己的分支:\
模块是:
\隐藏 \分支 \标签 \树干 \api \分支 \标签 \树干 \ui \分支 \标签 \树干另外,产品版本是通过组合模块构建的,并使用 CI 系统定期编译。
\产品X \分支 \5.0 \hid-4.0 (svn:externs \hid\branches\4.0) \api-3.0 (svn:externs \api\branches\3.0) \ui-5.0 (svn:externs \ui\branches\5.0) \标签 \树干我们遇到的主要问题是 'svn tag' 与外部关联的行为。当前的 externs 正在引用 HEAD——因为我们希望定期构建最新版本以确保所有模块一起工作。但是,一旦构建成功并且我们继续发布,如果有一种简单的方法可以自动标记所有内容——包括在 extern 中使用的版本,那就太好了。按照今天的情况,我们必须为模块创建标签,然后将外部更新到这些标签,然后标记产品,最后将其交换回主干。
有没有更清洁的方法来做到这一点?也欢迎对当前结构发表评论。
【问题讨论】:
标签: svn tags svn-externals