view tests/test-extdiff @ 7654:816b708f23af

store all heads of a branch in the branch cache All heads of branches will be stored in a new cache file 'branchheads.cache' within the .hg directory. The old 'branch.cache' file from older versions will be ignored. The new cache contents are formatted line-by-line as '{node} {branchtag}\n'. This is the same as the previous format. Now, every head is recorded in an oldest -> tipmost order. The localrepo.branchheads function is reworked to use the data from the cache.
author John Mulligan <phlogistonjohn@asynchrono.us>
date Wed, 14 Jan 2009 21:47:38 -0500
parents d4fa6bafc43a
children e81e6c996e99
line wrap: on
line source

#!/bin/sh

echo "[extensions]" >> $HGRCPATH
echo "extdiff=" >> $HGRCPATH

hg init a
cd a
echo a > a
echo b > b
hg add
# should diff cloned directories
hg extdiff -o -r $opt

echo "[extdiff]" >> $HGRCPATH
echo "cmd.falabala=echo" >> $HGRCPATH
echo "opts.falabala=diffing" >> $HGRCPATH

hg falabala

hg help falabala

hg ci -d '0 0' -mtest1

echo b >> a
hg ci -d '1 0' -mtest2

# should diff cloned files directly
hg falabala -r 0:1

# test diff during merge
hg update 0
echo c >> c
hg add c
hg ci -m "new branch" -d '1 0'
hg update -C 1
hg merge tip
# should diff cloned file against wc file
hg falabala > out || echo "diff-like tools yield a non-zero exit code"
# cleanup the output since the wc is a tmp directory
sed  's:\(.* \).*\(\/test-extdiff\):\1[tmp]\2:' out