我正在为我的公司寻找 svn externals,它似乎对我们来说是一个很好的功能。我们有几个产品经常引用共享组件,但有一个坏习惯,即有时会落后于旧版本甚至不同分支的代码库。
我已经阅读了一些关于它们现在如何工作的内容,我想我理解这个概念还可以。我不能 100% 确定多个存储库的不同版本如何链接在一起。
假设我有一个产品和一个库。该产品是针对库构建的,因此其 repo 具有链接到库源的 svn:externals 属性。在 svn:externals 定义中没有特定版本的情况下,当我检查产品的 HEAD 时,我也会得到库的 HEAD。
多年来,我构建了多个版本的产品,每次都引用最新版本的库。有一天,尽管我必须通过手动选择正确的修订版返回并检查产品版本 1。当我这样做时,我会得到哪个版本的库,HEAD 还是我第一次构建它时使用的修订版?
希望我是一名优秀的开发人员,并记得标记我发布的每个产品版本。当我将标签“Product-1-0-0”应用于存储库时,库存储库的正确修订版是否也会被标记?如果我稍后根据标签“Product-1-0-0”检出产品,是否会检出库的正确版本?