Mercurial popularity is stagnant

Matthew Turk matthewturk at gmail.com
Tue Jul 1 22:30:24 UTC 2014


On Tue, Jul 1, 2014 at 4:37 PM, Michael McNeil Forbes
<michael.forbes at gmail.com> wrote:
> On Jul 1, 2014, at 12:55 PM, Matthew Turk <matthewturk at gmail.com> wrote:
>> We're an hg shop that does long running scientific simulations, but
>> we've avoided versioning data alongside code for this reason.  My
>> recollection is that git-annex enables multiple different backends.
>
> It is not obvious to me how to do this: it does allow one to use different
> types of remote stores ("special remotes") but I don't see anything
> about being able to hook in hg.  The source code looks like it might be
> modular enough that adapting it to use hg would be possible, but it does
> not look like it has been designed with this as a major goal (though
> it would be awesome).
>
>> I wonder if it would be possible to have the largefiles extension for hg
>> use different backends?  This would be nicely in lien with the
>> increasing prominence of object stores in supercomputing centers.
>
> I thought of this, but it seems like reinventing the wheel. Hooking
> into git-annex would probably be a better strategy since Joel has
> taken care to solve some of the tricky issues with synchronization.
> Maybe it is a good excuse to brush up on my Haskell!

That could work, I suspect.  If the number of backends were reduced
considerably compared to git-annex it might be possible to implement
the necessary storage types in largefiles.  I say this having only
read the code this afternoon, however, so perhaps another author could
step in and suggest something.  The basestore object lists the
methods:

put
exists
_gethash
_getfile
_verifyfile

as the NotImplemented methods.  I think that for something simple like
an object store (S3 or Swift, for instance) these could be
implemented, where the configuration options could control things such
as the backend and so on.  This could potentially be implemented via
additional extensions to largefiles?  It's not clear to me however
whether or not this could override the behavior of actually getting or
putting the largefiles from a remote, largefiles enabled repository.

>
> I was hoping to find a workflow solution that uses myrepos to manage
> a git subrepository with my data, but the strategies I have tried with
> this seem to convoluted right now.
>
> Michael.
>



More information about the Mercurial mailing list