##// END OF EJS Templates
merge with stable
merge with stable

File last commit:

r9543:56a5f805 default
r12278:c4c2ba55 merge default
Show More
test-convert-cvs-branch
112 lines | 1.9 KiB | text/plain | TextLexer
/ tests / test-convert-cvs-branch
Frank Kingswood
convert: cvs.py - Allow user to use built-in CVS changeset code....
r6690 #!/bin/sh
Dirkjan Ochtman
change wiki/bts URLs to point to new hostname
r8936 # This is http://mercurial.selenic.com/bts/issue1148
# and http://mercurial.selenic.com/bts/issue1447
Frank Kingswood
convert: cvs.py - Allow user to use built-in CVS changeset code....
r6690
"$TESTDIR/hghave" cvs || exit 80
cvscall()
{
cvs -f "$@"
}
echo "[extensions]" >> $HGRCPATH
echo "convert = " >> $HGRCPATH
echo "graphlog = " >> $HGRCPATH
echo "[convert]" >> $HGRCPATH
Patrick Mezard
convert/cvs: add an option to disable remote log caching...
r8169 echo "cvsps.cache=0" >> $HGRCPATH
Frank Kingswood
convert: cvs.py - Allow user to use built-in CVS changeset code....
r6690
echo % create cvs repository
mkdir cvsrepo
cd cvsrepo
Martin Geisler
tests: avoid export FOO=bar bashism
r8350 CVSROOT=`pwd`
export CVSROOT
CVS_OPTIONS=-f
export CVS_OPTIONS
Frank Kingswood
convert: cvs.py - Allow user to use built-in CVS changeset code....
r6690 cd ..
cvscall -q -d "$CVSROOT" init
echo % Create a new project
mkdir src
cd src
Frank Kingswood
tests: allow cvs import to reorder its filename list...
r7465 echo "1" > a
echo "1" > b
cvscall import -m "init" src v0 r0 | sort
Frank Kingswood
convert: cvs.py - Allow user to use built-in CVS changeset code....
r6690 cd ..
cvscall co src
cd src
echo % Branch the project
cvscall tag -b BRANCH
Mads Kiilerich
test-convert-cvs*: mute output from "cvs up"...
r7812 cvscall up -r BRANCH > /dev/null
Frank Kingswood
convert: cvs.py - Allow user to use built-in CVS changeset code....
r6690
echo % Modify file a, then b, then a
echo "2" > a
cvscall ci -m "mod a" | grep '<--' | sed -e 's:.*src/\(.*\),v.*:checking in src/\1,v:g'
echo "2" > b
cvscall ci -m "mod b" | grep '<--' | sed -e 's:.*src/\(.*\),v.*:checking in src/\1,v:g'
echo "3" > a
cvscall ci -m "mod a again" | grep '<--' | sed -e 's:.*src/\(.*\),v.*:checking in src/\1,v:g'
echo % Convert
cd ..
hg convert src | sed -e 's/connecting to.*cvsrepo/connecting to cvsrepo/g'
echo % Check the result
Martin Geisler
tests: replace #...# syntax with {...}
r8523 hg -R src-hg glog --template '{rev} ({branches}) {desc} files: {files}\n'
Henrik Stuart
convert: better support for CVS branchpoints (issue1447)...
r8756
echo ""
echo % issue 1447
cvscall()
{
echo cvs -f "$@"
cvs -f "$@"
sleep 1
}
cvsci()
{
echo cvs -f ci "$@"
cvs -f ci "$@" >/dev/null 2>&1
sleep 1
}
cvscall -Q -d `pwd`/cvsmaster2 init >/dev/null 2>&1
cd cvsmaster2
David Champion
test: fix for compatibilty with true Bourne /bin/sh...
r9040 CVSROOT=`pwd`
export CVSROOT
Henrik Stuart
convert: better support for CVS branchpoints (issue1447)...
r8756 mkdir foo
cd ..
cvscall -Q co -d cvswork2 foo
cd cvswork2
echo foo > a.txt
echo bar > b.txt
cvscall -Q add a.txt b.txt
cvsci -m "Initial commit"
echo foo > b.txt
cvsci -m "Fix b on HEAD"
echo bar > a.txt
cvsci -m "Small fix in a on HEAD"
cvscall -Q tag -b BRANCH
cvscall -Q up -P -rBRANCH
echo baz > b.txt
cvsci -m "Change on BRANCH in b"
hg debugcvsps -x --parents foo | sed -e 's/Author:.*/Author:/' -e 's/Date:.*/Date:/'
cd ..