You are here

Bazaar: incompatible format 2a and rich-root support

Error message

Deprecated function: The each() function is deprecated. This message will be suppressed on further calls in menu_set_active_trail() (line 2405 of /is/htdocs/wp1022769_0UTS5D8WKG/www/siarp.de/includes/menu.inc).

I'm running Bazaar 2.0 on my local machine and the remote repository runs on Ubuntu Jaunty which provides Bazaar 1.13. After working locally for some time I wanted to push my branch to a newly created shared repository on the server but I got the error message

bzr: ERROR: RemoteRepository(bzr+ssh://SERVER/path/to/repo/.bzr/)      
is not compatible with
CHKInventoryRepository('file:///path/to/repo/.bzr/repository/')
different rich-root support

Reading http://www.nabble.com/bazaar-error-on-repository-td25868297.html it seems different Bazaar versions make different repository formats which are incompatible. But

[...] you could move the server to a rich root capable format; then it would work (though crossing the format boundary can be slow). 1.3.1 is new enough to support rich-root-pack.

So on the server I did

bzr upgrade --rich-root-pack repo/

and now it works. I can push my local branch to the remote repository.

But only once!

Second time I wanted to push I got another error:

bzr: ERROR: bzrlib.errors.ErrorFromSmartServer: Error received from smart server: ('error', "'Bazaar repository format 2a (needs bzr 1.16 or later)\\n'")

Looks like the format 2a, which is the default for Bazaar >= 2.0 is incompatible with the one on my server. Downgrading to an older format of my local tree did the trick:

bzr upgrade --format=1.14-rich-root

Comments

Thanks, helped a lot :)