问题
I have been using Bzr for version control of my project over the last few months. I am the sole developer, and currently I just have everything in a single local project directory, to which I commit and which I sync to DriveHQ.
I now have some large-scale experiments in mind which would likely break this main line, so I've been looking into the concepts of branches and shared repositories. So my question is, basically: how should I go about creating a new, shared repository from this already-version-controlled base?
I am familiar with the SVN project structure of trunk, branches and tags, and I'm going to adopt this structure. My plan is to just go ahead and do a fresh init-repo, and copy all my code (plus .bzr) over into the trunk folder. So is this OK? Or is there some way to convert what I have already into a shared repository?
Many thanks in advance for any help.
Christopher
回答1:
OK, so you have some work
directory where your standalone branch is.
You want to create trunk
and feature branches in new shared repo.
At first you need to create a shared repository itself:
bzr init-repo /path/to/repo
Now you can put your code to repo/trunk
. You can use push
, branch
or you can copy work
and use reconfigure
.
cd work; bzr push /path/to/repo/trunk
cd path/to/repo; bzr branch /path/to/work trunk
- or copy/move
work
to/path/to/repo/trunk
thencd /path/to/repo/trunk; bzr reconfigure --use-shared
In all cases you'll have branch trunk
as a copy of your old work
, and this trunk
will use shared repository to save the revisions.
You can also look at bzr-colo plugin.
回答2:
- Create a folder outside your current repository.
- Call
bzr init-repo
to create a shared repository - From your working tree push to the newly created shared repo.
You can now work directly on the shared repo
来源:https://stackoverflow.com/questions/8462555/bzr-create-a-shared-repository-from-an-existing-stand-alone-repository