[darcs-users] experience report from patch-tag (hung push on fork of patch-tag)

Thomas Hartman thomashartman1 at googlemail.com
Thu Jul 9 18:38:15 UTC 2009

After some more experiments, my push succeeded after 17 minutes.

darcs send -O a patch

yields a 47M .patch file. That's pretty big, and on top of that I seem
to have internet throttling for outbound, which seems to explain
what's going on. (Scp the patch file was also pretty slow.)

Experientially though, scp has a nice status bar that says what's
going on, and darcs push doesn't. That would have made a big
difference here.

As for why I have a 47M patch file, I presume this is due to some
binary files I added and deleted to the repo early on. If there's any
way of discarding patches related to this using obliterate or
something, I might do that. Is there?

Thanks for your help,


thartman at ubuntu:~/patch-tag-dev>darcs show repo
          Type: darcs
        Format: hashed, darcs-2
          Root: /home/thartman/patch-tag-dev
      Pristine: HashedPristine
         Cache: thisrepo:/home/thartman/patch-tag-dev,
repo:tphyahoo at patch-tag.com:/r/patch-tag-dev
        Author: thomashartman1 at gmail.com
Default Remote: tphyahoo at patch-tag.com:/r/patch-tag-fork1
   Num Patches: 737

On Tue, Jul 7, 2009 at 8:12 AM, Eric Kow<kowey at darcs.net> wrote:
> So first things first, it sounds like a workaround would be just
> to make a tarball and get from that.  Let's look a bit deeper:
> On Mon, Jul 06, 2009 at 21:27:02 -0400, Thomas Hartman wrote:
>> thartman at ubuntu:~/patch-tag-dev>darcs changes | wc -l
>> 2210
> Could I get a darcs show repo on that?
>> I can successfully perform this action if pushing to a virgin local
>> repo, takes about a minute.
> That's interesting.  It's the same action whether remote or local.
> Darcs push basically creates a patch bundle and performs darcs apply.
> So if it works locally, then an explanation like "darcs apply chokes
> on the large bundle" is likely not correct.
> I wonder why pushing remotely should make a difference.  If I remember
> correctly, we do something that amounts to
>  cat all-your-patches.dpatch | ssh patch-tag.com "darcs apply --repodir /foo"
> Let's test this out.  Could you darcs send -O a patch to an empty repo?
> What happens if you then apply that bundle?  What happens when you scp
> it over and then apply it by hand?
>> I can also push to patch-tag server if I
>> wipe history and push just the files as a first commit.
> Does darcs put fare any better?
>> If any of the darcs devs would like to have access to the patch tag
>> repo to reproduce this themselves the are welcome.
> Let's see how you do with the above first.  Thanks,
> --
> Eric Kow <http://www.nltg.brighton.ac.uk/home/Eric.Kow>
> PGP Key ID: 08AC04F9

Thomas Hartman

Darcs hosting: patch-tag.com
Build a webapp with haskell: happstack.com

More information about the darcs-users mailing list