[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

wc not locked eror while updating changed external with 1.0.6

From: Martin Furter <mf_at_rola.ch>
Date: 2004-09-11 16:31:04 CEST

Hello

We have one big repository containing all projects (libs and apps) and we
use externals to create one big include directory containing all the
latest versions of the include files of all libraries.
Now when we create a new tag and change the external to point to it, we
get a 'working copy xx not locked' error, but only when the directory the
external points to contain subdirectories.

Below is a shell script which creates a produces the error (WARNING: the
first command is an 'rm -rf' to remove the created directories and start
in a clean state).
It seems that 'trunk/inc2/file2_1.h' and 'trunk/inc2/dir1/file2_2.h' are
not needed, i get the same error when inc2 contains only the subdirectory
'dir1'.

Server is svn 1.0.4 on solaris and clients are 1.0.6 on linux and windows.

I'm sorry but i don't have a machin where i can install svn trunk or
1.1rcN at the moment, so i didn't test it with these versions of svn.

Martin

#!/bin/sh

# cleanup, create repos and wc
rm -rf externals-repos externals-wc
svnadmin create externals-repos
RURL="file://$PWD/externals-repos"
svn co "$RURL" externals-wc
cd externals-wc

# create some dirs
svn mkdir trunk
svn mkdir tags
svn mkdir trunk/inc1
svn mkdir trunk/inc2
svn mkdir trunk/tinc
svn mkdir tags/inc1
svn mkdir tags/inc2
svn ci -m "create directories"

# create project files
echo "// inc1/file1_1.h version 1" > trunk/inc1/file1_1.h
svn add trunk/inc1/file1_1.h
svn mkdir trunk/inc2/dir1
echo "// inc2/file2_1.h version 1" > trunk/inc2/file2_1.h
svn add trunk/inc2/file2_1.h
echo "// inc2/dir1/file2_2.h version 1" > trunk/inc2/dir1/file2_2.h
svn add trunk/inc2/dir1/file2_2.h
svn ci -m "create project files"

# create tags
svn cp "$RURL/trunk/inc1" "$RURL/tags/inc1/v1" -m "create v1 tag for inc1"
svn cp "$RURL/trunk/inc2" "$RURL/tags/inc2/v1" -m "create v1 tag for inc2"

# create externals
svn ps svn:externals "inc1 $RURL/tags/inc1/v1
inc2 $RURL/tags/inc2/v1" trunk/tinc
svn ci -m "create externals"

# update wc
svn up

# create version 2 of all files
echo "// inc1/file1_1.h version 2" > trunk/inc1/file1_1.h
echo "// inc2/file2_1.h version 2" > trunk/inc2/file2_1.h
echo "// inc2/dir1/file2_2.h version 2" > trunk/inc2/dir1/file2_2.h
svn ci -m "create version 2 of the files"

# create tags for version 2
svn cp "$RURL/trunk/inc1" "$RURL/tags/inc1/v2" -m "create v2 tag for inc1"
svn cp "$RURL/trunk/inc2" "$RURL/tags/inc2/v2" -m "create v2 tag for inc2"

# change external to inc1/v2
svn ps svn:externals "inc1 $RURL/tags/inc1/v2
inc2 $RURL/tags/inc2/v1" trunk/tinc
svn ci -m "create externals"

# update wc
svn up

# change external to inc2/v2
svn ps svn:externals "inc1 $RURL/tags/inc1/v2
inc2 $RURL/tags/inc2/v2" trunk/tinc
svn ci -m "create externals"

# update wc
echo ""
echo "============================================================="
echo "= the next update gives the following error with svn-1.0.6: ="
echo "= Fetching external item into 'trunk/tinc/inc2' ="
echo "= svn: Working copy 'trunk/tinc/inc2/dir1' not locked ="
echo "============================================================="
svn up

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Sep 11 16:31:26 2004

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.