hg merge: some getchangegroup fixups
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
hg merge: some getchangegroup fixups
- - filter more duplicates
- - request batching
- - lookup ordering
- - request counting
After these fixes, grabbing 1800 changesets on top of the 28k
changeset kernel history takes 23 round trips rather than a couple
hundred.
manifest hash: 78e893b68000267a8c7ea49fd38758f2fc96269f
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.0 (GNU/Linux)
iD8DBQFCrea0ywK+sNU5EO8RAv3cAKCQveivdApJIlslTCMLMp2VogRXfACeNRnx
Ihsf5yLz60fFpqlzAmZBACk=
=Euku
-----END PGP SIGNATURE-----
#!/bin/bash
#
# This is an example of using HGEDITOR to automate the signing of
# commits and so on.
MANIFEST=`grep '^HG: manifest hash' $1 | cut -b 19-`
if grep -q "^HG: merge resolve" $1 ; then
# we don't sign merges
$EDITOR $1
else
T=`mktemp`
CHANGED=`grep '^HG: changed' $1 | cut -b 13-`
# show a diff so writing commit comments is easier
hg diff $CHANGED >> $T
echo -e "\n\nmanifest hash: $MANIFEST" > $1
emacs -nw $T $1
head -1 $1 > $T
echo >> $T
gpg -a -u $HGUSER -o - --clearsign $1 >> $T
mv $T $1
fi