What takes a lot of time and bandwidth is not transferring the OpenERP addons files themselves, but the repository containing the whole versioning history. It has grown quite big over the years, due to the number of commits as well as the daily translation updates exported by Launchpad.
Answering your points one by one:
If you don't actually need the revision history, you can grab a "lightweight checkout" of the addons instead of a full checkout, by using this command:
bzr checkout --lightweight lp:openobject-addons/7.0 addons
It will be much faster but will only get the files, not the history. You'll still be able to use
bzr pull
to grab the latest changes from upstream. See also the doc aboutbzr checkout
.Now if you still want a full checkout you can use the trick of grabbing only a few hundred revisions at a time (there are about 9000 in addons 7.0 right now), so you can resume at any time even after a timeout:
$ bzr branch lp:openobject-addons/7.0 addons -r 100 # grab first 100 revs $ cd addons $ bzr pull -r 1000 $ bzr pull -r 2000 $ bzr pull -r 3000 $ ...
There's no easy way to completely bootstrap a full addons checkout unless you manage to perform a full checkout on another machine or internet connection, in which case you should be able to simply transfer the directory (most importantly the
.bzr
it contains) on any other machine.In order to see the difference between a local branch/checkout and another repository you can use
bzr missing
, for examplebzr missing lp:openobject-addons/7.0
. You can then grab the latest changes from that repository (provided it is compatible with yours) usingbzr pull
.
Now you should really have a look at the bzr documentation in order to get more information about the typical use cases. The documentation also contains a "bzr cheat sheet" that may help you.