【发布时间】:2009-10-31 15:02:11
【问题描述】:
我参与的项目有很多由不同开发人员管理的小模块。我们目前正在使用 svn 但想切换到 mercurial,因为我们需要去客户端站点并进行一些开发因此管理版本变得困难..
但是完整的主干大约有 4-5 GB,并且为所有模块创建一个存储库意味着如果我需要捆绑存储库,我需要移动这 4-5 Gigs 的文件..我不能接受对存在 .hg 文件夹的一个基本文件夹中的较小模块(因为它们没有 .hg 文件夹)进行备份,因为它不会给我任何从备份模块(文件夹)中提交的方式.. 那是什么处理这样一种情况的最佳方法,即一个项目有许多模块,然后说......所有开发人员都带着自己的单独模块(将要传输的数据大小保持在最低限度),在任何他们想要的地方编写代码,然后将其带回并合并他们的分支。
我想到的一个明显的解决方案是,每个模块都成为一个 repo,但是当一个集成产品发布时,这将很难特别管理..那个版本指的是什么版本??因为所有模块都有自己的版本历史??
更明显的情况是,如果我将完整的 svn 历史记录转换为 mercurial..那么如果在主干上完成转换,它将生成一个单独的 repo,但大小很大..每个模块所有者都带着这个巨大的捆绑包他每次都会毫无意义..
那么有什么建议吗??
谢谢。
【问题讨论】:
-
您应该查看子模块功能或林扩展。