我很难理解bzr init-repo
。
我想在他们自己的孤立存储库中拥有3个项目,在subversion中我将使用svnadmin create
三次来创建它们。像这样:
svnadmin create MyProject
svnadmin create MyHomepage
svnadmin create MyDocuments
以上将提供3个孤立的subversion存储库。
如何创建3个独立的共享集市存储库?
你会这样做吗
bzr init-repo ./repo
bzr init ./repo/MyProject
bzr init ./repo/MyHomepage
bzr init ./repo/MyDocuments
或者你会这样做吗
bzr init-repo ./MyProject
bzr init ./MyProject/trunk
bzr init-repo ./MyHomepage
bzr init ./MyHomepage/trunk
bzr init-repo ./MyDocuments
bzr init ./MyDocuments/trunk
还是有另一种方式吗?
答案 0 :(得分:9)
bzr init-repo创建共享存储库,用于存储分支机构的历史数据。因此,一个共享仓库中的所有分支实际上将共享存储。因此,每个分支的历史数据需要更少的空间,并且分支速度更快。
如果您不关心空间效率和新分支创建的速度,那么请不要使用共享存储库。
因此,如果您希望每个项目(MyProject,MyHomepage,MyDocuments)都有多个分支,那么正确的方法是:
bzr init-repo ./MyProject
bzr init ./MyProject/trunk
bzr init-repo ./MyHomepage
bzr init ./MyHomepage/trunk
bzr init-repo ./MyDocuments
bzr init ./MyDocuments/trunk
如果您计划为每个项目设置仅一个分支,那么根本不要使用共享仓库,并按照James Polley的建议行事。
您甚至可以稍后创建共享仓库,并使用bzr reconfigure --use-shared
将当前分支放入其中。
答案 1 :(得分:6)
我根本不会使用init-repo,因为它们不是相同代码的分支而是独立项目。
我只是这样做:
bzr init ./MyProject
bzr init ./MyHomepage
bzr init ./MyDocuments