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

Re: Changing external to sub-directory yields W155007 and E205011

From: Christian K. <christian.k.2510_at_gmail.com>
Date: Wed, 8 Apr 2015 21:40:26 +0200

Hello Bert,

thanks for your reply. From my understanding svn does support svn:externals
references within the same repository and also that identical sub-trees
will exist multiple times in the working copy structure (i,e, the main wc
and the external wc's).

I modified the script to make the sub-trees totally independent. see [1].
It produces the same error.

The behavior was originally discovered in a real world system. Where
committing the svn:externals and the updating happens on different systems
(and therefore independent working copies). So the behavior is also
unrelated to the fact the the same working copy is used (as in the provided
example scripts) to commit svn:externals and to update it.

Best regards,

Christian

[1]
rmdir /S /Q repo1
rmdir /S /Q repo2
rmdir /S /Q wc1
rmdir /S /Q wc2

svnadmin create repo1
svnadmin create repo2
svn co file:///%CD%/repo1 wc1
svn co file:///%CD%/repo2 wc2

mkdir wc1\foo
mkdir wc2\ext
mkdir wc2\ext\subdir

svn add wc1\foo
svn add wc2\ext
svn ci -m "" wc1
svn ci -m "" wc2

svn ps svn:externals "file:///%CD:\=/%/repo2/ext ext" wc1\foo
svn ci -m "" wc1
svn up wc1

svn ps svn:externals "file:///%CD:\=/%/repo2/ext/subdir ext/subdir" wc1\foo
svn ci -m "" wc1
svn up wc1

On Wed, Apr 8, 2015 at 5:47 PM, Bert Huijben <bert_at_qqmail.nl> wrote:

> You are adding a directory ‘ext’, which makes it a versioned path *
> *inside** the repository/working copy and then in the parent directory
> you set a property that it is something **external**.
>
>
>
> A path can’t be versioned as part of the working copy and be an external
> at the same time.
>
>
>
> Once a path is versioned, you can’t shadow it with an external.
>
> (Technically externals aren’t in your working copy… they are a higher
> level abstraction and a working copy by itself)
>
>
>
>
>
> As far as I can tell this works as expected.
>
>
>
> Bert
>
>
>
> *From:* Christian K. [mailto:christian.k.2510_at_gmail.com]
> *Sent:* woensdag 8 april 2015 17:13
> *To:* users_at_subversion.apache.org
> *Subject:* Changing external to sub-directory yields W155007 and E205011
>
>
>
> Dear all,
>
>
>
> using svn 1.8.11 changing an existing svn:externals property to a
> sub-directory thereof will result in an "... is not a working copy root"
> (combination of W200000, W155007 and E205011). The attached sequence of
> commands [1] will reproduce the behavior from scratch (Windows batch
> syntax).
>
>
>
> The final svn update will result in the attached output [2].
>
>
>
> Is this regular behavior of svn or is this a bug related to the processing
> of svn:externals?
>
>
>
> I would expect that changing the value of svn:externals from something
> valid to something else valid should be handled by svn.
>
>
>
> Thanks and best regards,
>
>
>
> Christian
>
>
>
> [1]
>
> svnadmin create repo
>
> svn co file:///%CD%/repo wc
>
>
>
> mkdir wc\foo
>
> mkdir wc\ext
>
> mkdir wc\ext\subdir
>
>
>
> svn add wc\foo
>
> svn add wc\ext
>
> svn ci -m "" wc
>
>
>
> svn ps svn:externals "^/ext ext" wc\foo
>
> svn ci -m "" wc
>
> svn up wc
>
>
>
> svn ps svn:externals "^/ext/subdir ext/subdir" wc\foo
>
> svn ci -m "" wc
>
> svn up wc
>
>
>
>
>
>
>
>
>
> [2]
>
> Updating 'wc':
>
>
>
> Fetching external item into 'wc\foo\ext\subdir':
>
> External at revision 3.
>
>
>
> svn: warning: W200000: Error handling externals definition for
> 'wc\foo\ext\subdir':
>
> svn: warning: W155007: 'C:\Temp\wc\foo\ext\subdir' is not a working copy
> root
>
> Removed external 'wc\foo\ext'
>
> Updated to revision 3.
>
> svn: E205011: Failure occurred processing one or more externals definitions
>
Received on 2015-04-08 21:40:54 CEST

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

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