view tests/test-merge-internal-tools-pattern @ 9622:9d1a480ca6ea

gendoc: fix synopsis The synopsis is used as an inline literal when generating the manpage. There should not be any whitespace on the inside of the quotation marks in inline literals. Commands with an empty synopsis (such as tags) produces ``tags `` as synopsis, which triggers a warning.
author Martin Geisler <mg@lazybytes.net>
date Tue, 20 Oct 2009 22:42:49 +0200
parents a3668330f14a
children 4c94b6d0fb1c
line wrap: on
line source

#!/bin/sh

# make sure that the internal merge tools (internal:fail, internal:local, and
# internal:other) are used when matched by a merge-pattern in hgrc

unset HGMERGE # make sure HGMERGE doesn't interfere with the test

hg init

echo "# initial file contents"
echo "line 1" > f
echo "line 2" >> f
echo "line 3" >> f
hg commit -Am "revision 0" -d "1000000 0"
cat f
echo "# branch 1: editing line 1"
sed 's/line 1/first line/' f > f.new
mv f.new f
hg commit -Am "edited first line" -d "1000000 0"

echo "# branch 2: editing line 3"
hg update 0
sed 's/line 3/third line/' f > f.new
mv f.new f
hg commit -Am "edited third line" -d "1000000 0"

echo "# merge using internal:fail tool"
echo "[merge-patterns]" > .hg/hgrc
echo "* = internal:fail" >> .hg/hgrc
hg merge
cat f
hg stat

echo "# merge using internal:local tool"
hg update -C 2
sed 's/internal:fail/internal:local/' .hg/hgrc > .hg/hgrc.new
mv .hg/hgrc.new .hg/hgrc
hg merge
cat f
hg stat

echo "# merge using internal:other tool"
hg update -C 2
sed 's/internal:local/internal:other/' .hg/hgrc > .hg/hgrc.new
mv .hg/hgrc.new .hg/hgrc
hg merge
cat f
hg stat

echo "# merge using default tool"
hg update -C 2
rm .hg/hgrc
hg merge
cat f
hg stat