Mercurial > hg
view tests/test-convert-cvs @ 6144:08e0825b8106
revlog.revision: avoid opening the datafile without need.
If there's no inline data, revlog.revision opens the data file every
time it's called. This is useful if we're going to call chunk many
times, but, if we're going to call it only once, it's better to let
chunk open the file - if we're lucky, all the data we're going to need
is already cached and we won't need to even look at the file.
author | Alexis S. L. Carvalho <alexis@cecm.usp.br> |
---|---|
date | Tue, 19 Feb 2008 19:20:10 -0300 |
parents | 549a7ebe1607 |
children | 92444fa7190b |
line wrap: on
line source
#!/bin/sh "$TESTDIR/hghave" cvs cvsps || exit 80 cvscall() { cvs -f $@ } echo "[extensions]" >> $HGRCPATH echo "convert = " >> $HGRCPATH echo % create cvs repository mkdir cvsrepo cd cvsrepo export CVSROOT=`pwd` export CVS_OPTIONS=-f cd .. cvscall -q -d "$CVSROOT" init 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 cvscall -q import -m import src INITIAL start cd .. echo % checkout source directory cvscall -q checkout src echo % commit a new revision changing b/c cd src echo c >> b/c cvscall -q commit -mci0 . | grep '<--' |\ sed -e 's:.*src/\(.*\),v.*:checking in src/\1,v:g' cd .. 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 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' echo % commit new file revisions cd src echo a >> a echo c >> b/c cvscall -q commit -mci1 . | 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 % 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'