on binary export and import

Matt Mackall mpm at selenic.com
Tue Sep 6 20:25:26 CDT 2005

On Tue, Sep 06, 2005 at 06:11:50PM -0700, TK Soh wrote:
> I noticed the following note on Wiki:
> -------------------
> Import is not fully functional
> Currently it ignores the Node ID and Parent fields in the export file so
> keeping disparate Mercurial repositories in sync via email or something other
> method of exchanging patches will work poorly when changes need to be merged
> instead of just tacked on.
> The plan here is to allow export to a native binary format. 
> -------------------
> I wonder if some priority can be put on realising this. IMHO, it's the one
> thing that would make Mercurial one big step closer to being perfect. In fact,
> it is the one last thing that stopping me from rolling it out in my work place.
> We deal quite a lot of binary files, and push/pull may not the best solution
> due to constrain in our development environment.

Then you probably want to roll back to Mercurial 0.4 or so, which had
this feature via debugchangegroup and debugaddchangegroup.

What's really needed here is to decide on a nice symmetrical syntax.

The old way worked like this:

 hg debugchangegroup a983776bcf fed938290 > changes.hg
 hg addchangegroup < changes.hg

What we want is something like:

 hg push -o changes.hg http://remote/hg/
 hg pull changes.hg

But I might also want to do:

 hg pull http://remote/changes.hg

This lets people publish all their changes in a static form without
publishing a whole repo (at the expense of possibly having to download
the whole thing every time)

Mathematics is the supreme nostalgia of our time.

More information about the Mercurial mailing list