Teach bdiff to support buffer objects
manifest.add gives revlog.addrevision a buffer object, which may
be cached and used for a second call in the same session (as mq does
when pushing multiple patches). The other option would be to cast the
buffer to str when caching it.
#!/bin/sh
#
mkdir t
cd t
hg init
echo 0 > a
echo 0 > b
echo 0 > t.h
mkdir t
echo 0 > t/x
hg ci -A -m m -d "1000000 0"
touch nottracked
hg locate a
hg locate NONEXISTENT
hg locate
hg rm a
hg ci -m m -d "1000000 0"
hg locate a
hg locate NONEXISTENT
hg locate
hg locate -r 0 a
hg locate -r 0 NONEXISTENT
hg locate -r 0
echo % -I/-X with relative path should work
cd t
hg locate
hg locate -I ../t
# test issue294
cd ..
rm -rf t
hg locate t