Best practice for bzr-svn mirror?

Russel Winder russel.winder at concertant.com
Mon Feb 23 12:18:22 GMT 2009


Matt,

On Sun, 2009-02-22 at 17:03 -0500, Matt McClure wrote:
> Russel,
> 
> On Sat, Feb 21, 2009 at 2:28 AM, Russel Winder
> <russel.winder at concertant.com> wrote:
> > The issue here is rebasing -- which is both a good thing and a bad
> > thing.
> >
> > In order to ensure good history, rebasing the Bazaar branch (or Git
> > repository) against the Subversion repository is a good thing.  However
> > this immediately destroys any capability of exchanging things directly
> > in a traditional DVCS way.
> 
> Thanks for writing up the explanation of how you use Bazaar with Subversion.
> 
> I've been working on a Perforce plugin for Bazaar, and I'm finding
> rebasing excruciating.  Coming from a centralized VCS background, my
> mental model is that rebasing is analogous to "syncing" or "updating"
> a working copy that has local changes with new upstream changes in the
> depot/repository.  Rebasing and updating both make the upstream
> changes appear before my local changes in the history.

I think this is the same model of rebasing used in DVCS (Bazaar and Git
anyway).

> In the centralized VCS case, the update can cause conflicts, which I
> resolve once per update.  With a DVCS when I rebase, it seems in the
> worst case that I have to resolve conflicts once per rebased local
> revision.  I tend to have many local revisions with small changes,
> making rebasing quite painful.

I have never found that, but I may be misunderstanding the scenario.

Where a single branch is used in either Bazaar or Git, and it is used
only as a client to the Subversion store, then rebasing should be
straightforward.  Though as soon as a rebase is undertaken it destroys
any relationship with branches/repositories that were branched/cloned
from the Subversion mirror branch/repository.  There are similar issues
with the relationship between branches.  Trying to manage Subversion
branches with Git or Bazaar seems to lead to complete chaos, which is I
think related to the rebase issue.

Using Bazaar to work with multiple branches of a Subversion repository
in a shared repository seems to work fine as long as you never use
rebase between the Bazaar branches.   The same goes for Git -- which
indicates it is an inherent CVCS/DVCS issue not a Bazaar or Git issue.

> Could I be doing something differently to make rebasing easier?

I suspect not.  Jelmer is probably the expert on all this though, he
might have something more constructive to contribute.

-- 
Russel.
====================================================
Dr Russel Winder                 Partner

Concertant LLP                   t: +44 20 7585 2200, +44 20 7193 9203
41 Buckmaster Road,              f: +44 8700 516 084
London SW11 1EN, UK.             m: +44 7770 465 077
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20090223/3df89555/attachment.pgp 


More information about the bazaar mailing list