Need feedback for extension name
obensonne at googlemail.com
Sat Nov 28 17:34:32 CST 2009
On Sat, Nov 28, 2009 at 11:25 PM, Greg Ward <greg-hg at gerg.ca> wrote:
> On Sat, Nov 28, 2009 at 12:38 PM, Oben Sonne <obensonne at googlemail.com> wrote:
>> I've written an extension for Mercurial which is supposed to
>> automatically synchronize a local repository with a remote one. The
>> extension does a duplex synchronization, i.e. it first commits changes
>> in the local repository (optionally with automatic tracking/untracking
>> of new/missing files), then it pulls changes from the remote repo,
>> tries to merge them and finally it pushes all changes back to the
>> remote repo.
> Interesting. Sounds like "bound mode" (that's Bazaar terminology) on
> steroids. Did you take a look at BIll Barry's boundmode extension
> that implements bzr-like push-on-commit
> (http://mercurial.selenic.com/wiki/BoundModeExtension)? It sounds
> like he has already done half the work of your extension; perhaps the
> auto-pull-merge feature could be implemented as a patch to boundmode?
Interesting, did not recognized the bound mode extension yet. I'll
definitely have a look into it.
For now I would keep my extension as a separate one as it is finished
already (I'm currently working on the test scripts).
>> All this happens continuously at a given interval.
> What, like, in the background? Did you write a daemon for this, or is
> the user supposed to set up a cron job?
The extension accepts a --daemon option, similar as for the serve command.
>> The extension is ready to to get published but I'm not sure yet about
>> the name. I would like to call it the 'sync' extension, because this
>> is what it does. However, as 'sync' is a quite generic term, I wonder
>> if it somehow might cause conflicts or ambiguities within the
>> Mercurial universe.
> autopushpullmerge? (ok, just kidding)
I like autosync and superbound.
> (Hmmm: I kinda like "duplexbound": if this really has to be a separate
> extension from Bill's boundmode, it would be nice to show the
> similarity in the name. But IMHO it would be better to have one more
> powerful extension than two overlapping extensions.)
The use case for my extension does not really expect users to manually
run hg commands in the repos to sync. It is supposed to be a quiet
backend to just synchronize files located in the repositories. As it
is designed to run in the background, it has a strong focus on how to
cope with errors and merge conflicts which cannot be resolved
automatically. I think this differs quite a lot from the bound
extension, which (if I got it right) tries to assist in a centralized
workflow. Adding the pull-bound feature to the bound extensions may be
reasonable, but the running-in-background features would be off topic
I think it would be better to keep both extensions separately.
More information about the Mercurial-devel