|
|
#!/bin/sh
|
|
|
|
|
|
echo '[extensions]' >> $HGRCPATH
|
|
|
echo 'hgext.graphlog =' >> $HGRCPATH
|
|
|
echo 'hgext.convert =' >> $HGRCPATH
|
|
|
|
|
|
glog()
|
|
|
{
|
|
|
hg -R "$1" glog --template '#rev# "#desc#" files: #files#\n'
|
|
|
}
|
|
|
|
|
|
hg init source
|
|
|
cd source
|
|
|
|
|
|
echo a > a
|
|
|
echo b > b
|
|
|
hg ci -d '0 0' -qAm '0: add a b'
|
|
|
echo c > c
|
|
|
hg ci -d '1 0' -qAm '1: add c'
|
|
|
hg copy a e
|
|
|
echo b >> b
|
|
|
hg ci -d '2 0' -qAm '2: copy e from a, change b'
|
|
|
hg up -C 0
|
|
|
echo a >> a
|
|
|
hg ci -d '3 0' -qAm '3: change a'
|
|
|
hg merge
|
|
|
hg copy b d
|
|
|
hg ci -d '4 0' -qAm '4: merge 2 and 3, copy d from b'
|
|
|
echo a >> a
|
|
|
hg ci -d '5 0' -qAm '5: change a'
|
|
|
cd ..
|
|
|
|
|
|
echo % convert from null revision
|
|
|
hg convert --config convert.hg.startrev=null source empty
|
|
|
glog empty
|
|
|
|
|
|
echo % convert from zero revision
|
|
|
hg convert --config convert.hg.startrev=0 source full
|
|
|
glog full
|
|
|
|
|
|
echo % convert from merge parent
|
|
|
hg convert --config convert.hg.startrev=1 source conv1
|
|
|
glog conv1
|
|
|
cd conv1
|
|
|
echo % check copy preservation
|
|
|
hg log --follow --copies e
|
|
|
echo % check copy removal on missing parent
|
|
|
hg log --follow --copies d
|
|
|
hg cat -r tip a b
|
|
|
hg -q verify
|
|
|
cd ..
|
|
|
|
|
|
echo % convert from merge
|
|
|
hg convert --config convert.hg.startrev=4 source conv4
|
|
|
glog conv4
|
|
|
cd conv4
|
|
|
hg up -C
|
|
|
hg cat -r tip a b
|
|
|
hg -q verify
|
|
|
cd ..
|
|
|
|
|
|
|