check in a bzr branch into subversion
Martin Steigerwald
ms at teamix.de
Wed Oct 24 16:04:12 BST 2007
Am Mittwoch, 24. Oktober 2007 schrieb Jelmer Vernooij:
Hi Jelmer,
> > I just thought bzr-svn might be able to help me there. Otherwise I would
> > try whether tailor can convert it for me. But my last experiences with
> > tailor - I wanted to convert mercurial to bazaar - haven't been that
> > convincing.
>
> You should be able to use the 'svn-push' command from bzr-svn; for
> example, you can run something like (from the bzr branch you'd like to
> push):
>
> bzr svn-push svn://foobar.host/repository/trunk
>
> I'd recommend using the latest version of bzr-svn for this.
Thanks for your answer.
I just tried it with bzr-svn 0.43 and bzr 0.91 and it worked nicely when I
tried it with a playground subversion URL, but not on the production one - on
the same subversion server. I will try with the latest versions from your
branch after my holidays. So please just ignore when the following seems like
an already fixed bug. I thought I report it anyway in case it contains some
helpful debugging information. Feel free to wait until I tried with the
newest versions before looking at my bug report (if the bug is in there too).
bzr svn-push worked with the playground URL:
ms at mango> bzr svn-push svn+https://somesite/svn/svn-uebung/notifysync
But not with the production one:
-----------------------------------------------------------------------
ms at mango> bzr svn-push svn+https://somesite/svn/Software/notifysync
bzr: ERROR: /notifysync is not a valid Subversion branch path.
See 'bzr help svn-branching-schemes' for details.
-----------------------------------------------------------------------
It had "none" in ~/.bazaar/subversion.conf. Both the production and the
playground path are without "branches", "tags", "trunks" in them. However
for first svn-uebung bzr-svn did not have "none" as branching scheme, so I
thought I delete ~/.bazaar/subversion.conf and let bzr-svn guess it again.
Maybe that was a leftover from previous experiments with https:// only URLs
or what.
I svn rm'd the directory for the branch again, tried importing it again and
got:
---------------------------------------------------------------------
ms at mango> bzr svn-push svn+https://somesite/svn/Software/notifysync
bzr: ERROR: exceptions.AssertionError:
Traceback (most recent call last):
File "/usr/lib/python2.4/site-packages/bzrlib/commands.py", line 800, in
run_bzr_catch_errors
return run_bzr(argv)
File "/usr/lib/python2.4/site-packages/bzrlib/commands.py", line 758, in
run_bzr
ret = run(*run_argv)
File "/usr/lib/python2.4/site-packages/bzrlib/commands.py", line 492, in
run_argv_aliases
return self.run(**all_cmd_args)
File "/usr/lib/python2.4/site-packages/bzrlib/plugins/svn/__init__.py", line
294, in run
target_branch = bzrdir.import_branch(source_branch, revision_id)
File "/usr/lib/python2.4/site-packages/bzrlib/plugins/svn/format.py", line
156, in import_branch
push_new(repos, target_branch_path, source, stop_revision)
File "/usr/lib/python2.4/site-packages/bzrlib/plugins/svn/commit.py", line
639, in push_new
validate=validate)
File "/usr/lib/python2.4/site-packages/bzrlib/plugins/svn/commit.py", line
674, in push
builder.commit(rev.message)
File "/usr/lib/python2.4/site-packages/bzrlib/plugins/svn/commit.py", line
479, in commit
assert self._new_revision_id is None or self._new_revision_id == revid
AssertionError
bzr 0.91.0 on python 2.4.4.final.0 (linux2)
arguments:
['/usr/bin/bzr', 'svn-push', 'svn+https://intra.teamix.net/svn/Software/notifysync']
** please send this report to bazaar at lists.ubuntu.com
---------------------------------------------------------------------
Two revisions were commited successfully, before the error happened. I tried
another time and the same error happened again.
After the partly completed operation it had the following in subversion.conf:
---------------------------------------------------------------------
ms at mango> cat ~/.bazaar/subversion.conf
~
[42c148d0-0721-0410-8e0a-97c887b74eb4]
locations = https://somesite/svn/Software
branching-scheme = single-notifysync
---------------------------------------------------------------------
Okay, that would at least be different to "none".
A call to bzr svn-branching-scheme gave this error instead BTW:
---------------------------------------------------------------------
ms at mango> bzr svn-branching-scheme
~/Kunden/TVI/Webcluster/NotifySync#3
bzr: ERROR: exceptions.AttributeError: 'KnitRepository' object has no
attribute 'get_scheme'
Traceback (most recent call last):
File "/usr/lib/python2.4/site-packages/bzrlib/commands.py", line 800, in
run_bzr_catch_errors
return run_bzr(argv)
File "/usr/lib/python2.4/site-packages/bzrlib/commands.py", line 758, in
run_bzr
ret = run(*run_argv)
File "/usr/lib/python2.4/site-packages/bzrlib/commands.py", line 492, in
run_argv_aliases
return self.run(**all_cmd_args)
File "/usr/lib/python2.4/site-packages/bzrlib/plugins/svn/__init__.py", line
324, in run
scheme = repos.get_scheme()
AttributeError: 'KnitRepository' object has no attribute 'get_scheme'
bzr 0.91.0 on python 2.4.4.final.0 (linux2)
arguments: ['/usr/bin/bzr', 'svn-branching-scheme']
** please send this report to bazaar at lists.ubuntu.com
---------------------------------------------------------------------
I also tried creating the branch directory in svn first, but then bzr-svn
complained:
---------------------------------------------------------------------
ms at mango> bzr svn-push svn+https://somesite/svn/Software/notifysync
~/Kunden/TVI/Webcluster/NotifySync#3
bzr: ERROR: These branches have diverged. Use the merge command to reconcile
them.
---------------------------------------------------------------------
Thus it seems to expect that the branch directory does not yet exist in svn.
Well, I will try with the newest of Bazaar and Bzr-Svn when I am back from
holiday and manage to take time for that.
Regards,
--
Martin Steigerwald - team(ix) GmbH - http://www.teamix.de
gpg: 19E3 8D42 896F D004 08AC A0CA 1E10 C593 0399 AE90
More information about the bazaar
mailing list