目前我们有一个项目的标准颠覆存储库布局:
./主干
./分支机构
./标签
但是,随着我们沿着 OSGi 和模块化项目的道路前进,我们最终得到了:
./trunk/bundle/main
./trunk/bundle/modulea
./trunk/bundle/模块
./tags/bundle/main-1.0.0
./tags/bundle/main-1.0.1
./tags/bundle/modulea-1.0.0
'build' 仍然非常单一,因为它按顺序构建所有模块,尽管我开始怀疑我们是否应该将构建/存储库重构为更像这样的东西:
./bundle/main/trunk
./bundle/main/tags/main-1.0.0
./bundle/main/tags/main-1.0.1
./bundle/modulea/trunk
./bundle/modulea/tags/modulea-1.0.0
在这种模式下,我会想象每个模块构建自己,并将其二进制文件存储在存储库(maven、ivy 或 subversion 存储库本身的其他路径)中。
一旦模块化,是否有关于项目布局的指南或“最佳实践”?
最佳答案
Subversion 这本书包含两个部分:
有关该主题的博客条目:"Subversion Repository Layout"
不过,简短的回答是:虽然您的里程会有所不同(每种情况因人而异),但您的 /bundle/<project>/(trunk|tags|branches)
方案相当普遍,可能适合您。
关于java - 什么时候应该将一个多模块项目拆分成单独的存储库树?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14397/