My experience with bzr-svn

Lars Kellogg-Stedman lars at oddbit.com
Mon May 18 23:09:47 BST 2009


Hello all,

I'm trying to duplicate the effect of 'git svn clone
https://svn.example.com/reporoot/projects' using the bzr-svn plugin.
I've run into a number of problems that I thought I would document in
the hopes that someone can offer a solution.

(1) Installation problems

This is a minor quibble: bzr-svn requires Subverty.  I would normally
expect an "easy_install Subverty" to take care of this, but Subverty
is apparently not in the right repositories (so I installed it by
hand, which was not substantially more difficult, of course).  If the
bzr-svn plugin used setuptools instead of distutils, I think the
dependency could be handled automatically.

(2) Problems with self-signed certs

I initially tried:

  bzr svn-import https://svn.example.com/reporoot/projects

And received the error "cannot verify peer..." error from libcurl
(which is true...the repo uses a self-signed certificate).  I looked
around and couldn't find a way to pass the equivalent of the curl CLI
option '--insecure' option to bzr-svn.  I added
connection.setopt(pycurl.SSL_VERIFYPEER,0) to the pycurl transport,
and ran into...

(3) Problems with authentication

The repository requires authentication.  I wasn't able to find any
documentation on how to provide a username and password to bzr-svn.

Jelmer on #bzr pointed me at the "svn+https" scheme, which took care
of all the connectivity issues, but I didn't find this documented on
http://bazaar-vcs.org/BzrForeignBranches/Subversion nor by
http://samba.org/~jelmer/bzr-svn/FAQ.html.

Once the connectivity problems were resolved, I ran into a new problem:

(4) Problems with partial imports

I am trying to import only the "/projects/" directory of this
subversion repository (part of the goal here is, in fact, to split
apart an old and crufty Subversion repository containing too many
things that should probably have been separate repositories from the
beginning).  The attempt fails with the following error:

bzr: ERROR: The specified path is inside a branch. Specify a different
URL or a different repository layout (see also 'bzr help svn-layout').

I've read through 'bzr help svn-layout', and it didn't help me.

It looks like I could go svn -> git -> bzr, and barring other
solutions I might give that shot later this evening.

For the record:

  Bazaar (bzr) 1.13.1
  bzr-svn 0.5.3

Thanks for your thoughts,

-- 
Lars Kellogg-Stedman <lars at oddbit.com>



More information about the bazaar mailing list