Hello,
When file external is modified in the working copy, then creating a
branch or tag copies original file to the tag or branch (as well as
svn:externals property). This results in a new directory that can't be
checked out.
Please find reproduction script attached.
--
Alexander Kitaev,
TMate Software,
http://svnkit.com/ - Java [Sub]Versioning Library!
http://sqljet.com/ - Java SQLite Library!
#!/bin/sh
# The next line is the only line you should need to adjust.
SVNDIR=/home/builder/usr/svn-166/bin
SVN=${SVNDIR}/svn
SVNSERVE=${SVNDIR}/svnserve
SVNADMIN=${SVNDIR}/svnadmin
URL=file:///`pwd`/repos
rm -rf repos wc branch-wc import-me
${SVNADMIN} create repos
echo "### Making a Greek Tree for import..."
mkdir import-me
mkdir import-me/dir
touch import-me/dir/file.txt
(cd import-me; ${SVN} import -q -m "Initial import." ${URL})
echo "### Checking out WC..."
${SVN} co ${URL} wc
echo "### Setting svn:externals property..."
${SVN} ps svn:externals "external.txt ${URL}/dir/file.txt" wc/dir
${SVN} ci wc -m "external property set"
echo "### Update working copy..."
${SVN} up wc
echo "### Copy from wc to create a branch (revision 3)..."
${SVN} cp --parents wc/dir ${URL}/branch -m "branch created"
echo "### Check out branch, note that externals fails..."
${SVN} co ${URL}/branch branch-wc
echo "### Copy (revision 3) log:"
${SVN} log -v -r3 ${URL}