Hi everyone,
Here is a script that causes this problem, this only fails in
Subversion 1.0.6, version 1.1.0 RC2 is fine. The version that fails is
on Fedora core 1, with Berkeley DB 4.1.25-14, the version that works is
on RedHat 7.3, with Berkeley DB 4.2.52.NC. So this may already be fixed...
Thanks,
Lee
>> I changed the externals property on a directory to be revision 4,
>>commited the change, then in another local copy, did an "svn update"
>>(in the main directory, not in the externals directory). I got an
>>error message, "Working copy 'externals_dir/externals_subdir' not
>>locked," and half my files in the externals directory
>>disappeared. Doing an "svn update" in the externals directory brings
>>them back, doing a checkout in a fresh directory brings them in, but
>>this was a little disconcerting.
>>
>>
>
>Can you give us a concrete reproduction recipe...
>
>
Ye scripte:
#!/bin/sh
function errFn()
{
echo $1
exit 1
}
DIR=$PWD
mkdir $DIR/tmp || errFn "Cannot create directory $DIR/tmp"
cd $DIR/tmp
set -x
mkdir -p project1 src1/subdir
for i in 1 2 3 4 5
do
echo "a$i" > src1/a$i
done
for i in 1 2 3 4 5
do
echo "b$i" > src1/subdir/b$i
done
svnadmin create $DIR/tmp/project1
export PROJ1=file://$DIR/tmp/project1
cd src1
svn import $PROJ1 -m "Initial revision."
mkdir -p project2 src2/incdir/sub1 src2/incdir/sub2
for i in 1 2 3 4 5
do
echo "c$i" > src2/incdir/c$i
echo "d$i" > src2/incdir/sub1/d$i
echo "e$i" > src2/incdir/sub2/e$i
done
svnadmin create $DIR/tmp/project2
export PROJ2=file://$DIR/tmp/project2
cd src2
svn import $PROJ2 -m "Initial revision."
cd $DIR/tmp
mkdir edit1
cd edit1
svn checkout $PROJ1
cd project1
svn propedit --non-interactive svn:externals .
# Make externals have a value of "-r1 $PROJ2/incdir
# (e.g. "incdir -r1 file:///home/lee/tmp/project2/incdir")
svn commit -m "Linked in incdir in project 2"
cd $DIR/tmp
mkdir edit2
cd edit2
svn checkout $PROJ2
cd project2/incdir
echo "c1.2" >c1
svn commit -m "Changed incdir/c1 to c1.2"
cd $DIR/tmp
mkdir edit3
cd edit3
svn checkout $PROJ1
cd $DIR/tmp
mkdir edit4
cd edit4
svn checkout $PROJ1
cd $DIR/tmp/edit3/project1
svn propedit --non-interactive svn:externals .
# Make externals have a value of "-r2 $PROJ2/incdir
svn commit -m "Updated externals to release 2"
cd $DIR/tmp/edit4/project1
svn update
# Now files (c1 to c5) are missing in $DIR/tmp/edit4/project1/incdir
# cd $DIR/tmp/edit4/project1/incdir; svn update
# will bring them back.
--
+=========================================================
+ Lee Merrill lee@bustech.com 919-866-2008
+=========================================================
Unless otherwise stated, any views presented in this email are solely those of the author and do not necessarily represent those of the company.
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Mon Sep 13 15:02:58 2004