mirror of
https://github.com/facebook/sapling.git
synced 2024-10-10 00:45:18 +03:00
47d2411255
Specifically, output of "cvs ci" varies unpredictably across CVS versions, so any test that includes the output of "cvs ci" is doomed to fail some of the time. This fixes that by discarding the output of "cvs ci".
79 lines
1.4 KiB
Bash
Executable File
79 lines
1.4 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# This feature requires use of builtin cvsps!
|
|
"$TESTDIR/hghave" cvs || exit 80
|
|
|
|
set -e
|
|
|
|
echo "[extensions]" >> $HGRCPATH
|
|
echo "convert = " >> $HGRCPATH
|
|
echo "[convert]" >> $HGRCPATH
|
|
echo "cvsps=builtin" >> $HGRCPATH
|
|
|
|
echo % create cvs repository with one project
|
|
mkdir cvsrepo
|
|
cd cvsrepo
|
|
export CVSROOT=`pwd`
|
|
export CVS_OPTIONS=-f
|
|
cd ..
|
|
|
|
filterpath()
|
|
{
|
|
eval "$@" | sed "s:$CVSROOT:*REPO*:g"
|
|
}
|
|
|
|
cvscall()
|
|
{
|
|
echo cvs -f "$@"
|
|
cvs -f "$@" 2>&1
|
|
}
|
|
|
|
# output of 'cvs ci' varies unpredictably, so just discard it
|
|
cvsci()
|
|
{
|
|
echo cvs -f ci "$@"
|
|
cvs -f ci "$@" >/dev/null 2>&1
|
|
}
|
|
|
|
filterpath cvscall -d "$CVSROOT" init
|
|
mkdir cvsrepo/proj
|
|
|
|
cvscall -q co proj
|
|
|
|
echo % create file1 on the trunk
|
|
cd proj
|
|
touch file1
|
|
cvscall -Q add file1
|
|
cvsci -m"add file1 on trunk" file1
|
|
|
|
echo % create two branches
|
|
cvscall -q tag -b v1_0
|
|
cvscall -q tag -b v1_1
|
|
|
|
echo % create file2 on branch v1_0
|
|
cvscall -q up -rv1_0
|
|
touch file2
|
|
cvscall -Q add file2
|
|
cvsci -m"add file2 on branch v1_0" file2
|
|
|
|
echo % create file3, file4 on branch v1_1
|
|
cvscall -Q up -rv1_1
|
|
touch file3
|
|
touch file4
|
|
cvscall -Q add file3 file4
|
|
cvsci -m"add file3, file4 on branch v1_1" file3 file4
|
|
|
|
echo % merge file2 from v1_0 to v1_1
|
|
cvscall -q up -jv1_0
|
|
cvsci -m"merge file2 from v1_0 to v1_1"
|
|
|
|
echo % cvs rlog output
|
|
filterpath cvscall -q rlog proj | egrep '^(RCS file|revision)'
|
|
|
|
echo % convert to hg
|
|
cd ..
|
|
filterpath hg convert proj proj.hg
|
|
|
|
echo % hg log output
|
|
hg -R proj.hg log --template "{rev} {desc}\n"
|