test-convert-cvs
95 lines
| 2.2 KiB
| text/plain
|
TextLexer
/ tests / test-convert-cvs
|
r5307 | #!/bin/sh | ||
"$TESTDIR/hghave" cvs cvsps || exit 80 | ||||
|
r5750 | cvscall() | ||
{ | ||||
cvs -f $@ | ||||
} | ||||
|
r5307 | echo "[extensions]" >> $HGRCPATH | ||
echo "convert = " >> $HGRCPATH | ||||
echo % create cvs repository | ||||
mkdir cvsrepo | ||||
cd cvsrepo | ||||
export CVSROOT=`pwd` | ||||
|
r5697 | export CVS_OPTIONS=-f | ||
|
r5307 | cd .. | ||
|
r5750 | cvscall -q -d "$CVSROOT" init | ||
|
r5307 | |||
echo % create source directory | ||||
mkdir src-temp | ||||
cd src-temp | ||||
echo a > a | ||||
mkdir b | ||||
cd b | ||||
echo c > c | ||||
cd .. | ||||
echo % import source directory | ||||
|
r5750 | cvscall -q import -m import src INITIAL start | ||
|
r5307 | cd .. | ||
echo % checkout source directory | ||||
|
r5750 | cvscall -q checkout src | ||
|
r5307 | |||
|
r5381 | echo % commit a new revision changing b/c | ||
cd src | ||||
echo c >> b/c | ||||
|
r5750 | cvscall -q commit -mci0 . | grep '<--' |\ | ||
|
r5381 | sed -e 's:.*src/\(.*\),v.*:checking in src/\1,v:g' | ||
cd .. | ||||
|
r5307 | echo % convert fresh repo | ||
hg convert src src-hg | sed -e 's/connecting to.*cvsrepo/connecting to cvsrepo/g' | ||||
cat src-hg/a | ||||
cat src-hg/b/c | ||||
|
r5381 | echo % convert fresh repo with --filemap | ||
echo include b/c > filemap | ||||
hg convert --filemap filemap src src-filemap | sed -e 's/connecting to.*cvsrepo/connecting to cvsrepo/g' | ||||
cat src-hg/b/c | ||||
hg -R src-filemap log --template '#rev# #desc# files: #files#\n' | ||||
|
r5307 | echo % commit new file revisions | ||
cd src | ||||
echo a >> a | ||||
echo c >> b/c | ||||
|
r5750 | cvscall -q commit -mci1 . | grep '<--' |\ | ||
|
r5364 | sed -e 's:.*src/\(.*\),v.*:checking in src/\1,v:g' | ||
|
r5307 | cd .. | ||
echo % convert again | ||||
hg convert src src-hg | sed -e 's/connecting to.*cvsrepo/connecting to cvsrepo/g' | ||||
cat src-hg/a | ||||
cat src-hg/b/c | ||||
|
r5381 | echo % convert again with --filemap | ||
hg convert --filemap filemap src src-filemap | sed -e 's/connecting to.*cvsrepo/connecting to cvsrepo/g' | ||||
cat src-hg/b/c | ||||
hg -R src-filemap log --template '#rev# #desc# files: #files#\n' | ||||
|
r5307 | |||
|
r5919 | echo % commit branch | ||
cd src | ||||
cvs -q update -r1.1 b/c | ||||
cvs -q tag -b branch | ||||
cvs -q update -r branch | ||||
echo d >> b/c | ||||
cvs -q commit -mci2 . | grep '<--' |\ | ||||
sed -e 's:.*src/\(.*\),v.*:checking in src/\1,v:g' | ||||
cd .. | ||||
echo % convert again | ||||
hg convert src src-hg | sed -e 's/connecting to.*cvsrepo/connecting to cvsrepo/g' | ||||
cat src-hg/a | ||||
cat src-hg/b/c | ||||
echo % convert again with --filemap | ||||
hg convert --filemap filemap src src-filemap | sed -e 's/connecting to.*cvsrepo/connecting to cvsrepo/g' | ||||
cat src-hg/b/c | ||||
hg -R src-filemap log --template '#rev# #desc# files: #files#\n' | ||||
echo "graphlog = " >> $HGRCPATH | ||||
hg -R src-hg glog --template '#rev# (#branches#) #desc# files: #files#\n' | ||||