Mercurial > public > mercurial-scm > hg
diff tests/test-convert-p4 @ 7823:11efa41037e2 1.2
convert: Perforce source for conversion to Mercurial
author | Frank Kingswood <frank@kingswood-consulting.co.uk> |
---|---|
date | Tue, 03 Mar 2009 21:32:23 +0000 |
parents | |
children | ee8d9b93b316 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-convert-p4 Tue Mar 03 21:32:23 2009 +0000 @@ -0,0 +1,75 @@ +#!/bin/sh + +"$TESTDIR/hghave" p4 || exit 80 + +echo "[extensions]" >> $HGRCPATH +echo "convert = " >> $HGRCPATH + +echo % create p4 depot +export P4ROOT=$PWD/depot +export P4AUDIT=$P4ROOT/audit +export P4JOURNAL=$P4ROOT/journal +export P4LOG=$P4ROOT/log +export P4PORT=localhost:16661 +export P4DEBUG=1 + +echo % start the p4 server +[ ! -d $P4ROOT ] && mkdir $P4ROOT +p4d -f -J off >$P4ROOT/stdout 2>$P4ROOT/stderr & +trap "echo % stop the p4 server ; p4 admin stop" EXIT + +# wait for the server to initialize +while ! p4 ; do + sleep 1 +done >/dev/null 2>/dev/null + +echo % create a client spec +export P4CLIENT=hg-p4-import +DEPOTPATH=//depot/test-mercurial-import/... +p4 client -o | sed '/^View:/,$ d' >p4client +echo View: >>p4client +echo " $DEPOTPATH //$P4CLIENT/..." >>p4client +p4 client -i <p4client + +echo % populate the depot +echo a > a +mkdir b +echo c > b/c +p4 add a b/c +p4 submit -d initial + +echo % change some files +p4 edit a +echo aa >> a +p4 submit -d "change a" + +p4 edit b/c +echo cc >> b/c +p4 submit -d "change b/c" + +echo % convert +hg convert -s p4 $DEPOTPATH dst +hg -R dst log --template 'rev=#rev# desc="#desc#" tags="#tags#" files="#files#"\n' + +echo % change some files +p4 edit a b/c +echo aaa >> a +echo ccc >> b/c +p4 submit -d "change a b/c" + +echo % convert again +hg convert -s p4 $DEPOTPATH dst +hg -R dst log --template 'rev=#rev# desc="#desc#" tags="#tags#" files="#files#"\n' + +echo % interesting names +echo dddd > "d d" +mkdir " e " +echo fff >" e /f " +p4 add "d d" " e /f " +p4 submit -d "add d e f" + +echo % convert again +hg convert -s p4 $DEPOTPATH dst +hg -R dst log --template 'rev=#rev# desc="#desc#" tags="#tags#" files="#files#"\n' + +