On Sat, Dec 06, 2008 at 05:37:43PM +0200, Dan Pascu wrote:
>> Except that for the most common case, a local branch, get is
>> bi-directional, and more efficient that the currently
>> implementation of put.  Using darcs' repository as an example:
>
> I think you are comparing apples with oranges here. You issues a
> lazy get which only took the pristine tree, while put took and
> applied all patches

OK, then let's compare it without laziness (even though it is a local
branch, and I *want* laziness).  There's still an order of magnitude
difference between get and put:

    $ time darcs get --complete --repodir $PWD.branch1 $PWD
    Copying patches, to get lazy repository hit ctrl-C...
    Finished getting.

    real    0m18.255s
    user    0m8.629s
    sys     0m3.728s

    $ time darcs put $PWD.branch2
    Merging them 3414/7011
    Writing pristine 205/236
    Optimizing inventory 3575/7011
    Writing inventory 1/1 :
    Synchronizing pristine 203/236
    Finished applying...
    Put successful.

    real    4m49.517s
    user    3m23.681s
    sys     0m35.830s

> IMO, it's less useful to have a lazy put (maybe it should be there
> for symmetry), because the use target for put is a bit different
> from get.  [...] Put OTOH, is mostly used to setup a central
> repository for syncing between multiple disconnected developers.

Surely put is mostly used that way BECAUSE that's the only case for
which get is not a superior alternative.  If put actually did
something significant, it would actually BE symmetrical with get and
it would be useful to use it for local lazy branches.
_______________________________________________
darcs-users mailing list
darcs-users@darcs.net
http://lists.osuosl.org/mailman/listinfo/darcs-users

Reply via email to