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

Re: Re: Branch/tag svn_external limit?

From: Simon Large <simon.tortoisesvn_at_gmail.com>
Date: Thu, 21 Feb 2013 09:25:13 +0000

On 21 February 2013 05:02, Kevin Jennings <kkjennings_at_sbcglobal.net> wrote:
>> On Tue, Feb 19, 2013 at 4:00 PM, Kevin Jennings
> I'm asking for a method to branch/tag something where I am guaranteed that when the tag is retrieved at any time in the future it will return exactly the same content regardless of any of the following:
> - Changes that have occurred to any of the source files
> - svn_external links exist in the tag
> - Links that point to other links
> - Links that point to the current or any other repository.
> In other words, to the extent that the addressing to any of the repositories stays the same, I should be able to retrieve a tag and get exactly the same thing at any time after the tag is created. It's not clear to me why you would consider that request to be a 'user error' or 'asking for trouble'. The inability to actually retrieve a tag simply because it has svn_external links is to me 'asking for trouble'.
> I'm also not alone in this thinking. Refer to the following link for svncopy.pl for a more in depth discussion. If I could get svncopy.pl to work properly, I wouldn't necessarily be asking here.
> http://svn.apache.org/repos/asf/subversion/trunk/contrib/client-side/svncopy/svncopy.README
> The reasons for asking in this forum is because Tortoise did add the feature that I'm asking for...it just doesn't work if you happen to have an svn_external link that also contains another svn_external link.

I don't know whether svncopy.pl supports that either. The readme
doesn't show it in the examples.

>> While what you ask for may be a useful feature, implementing it would then
>> modify the source repository of each external definition when you commit in an
>> entirely different repository. In many cases this would be totally unacceptable.
> Tortoise IS modifying the repository when it does this and the Tortoise developers seem to see this feature as useful and implemented it so why you say this would be unacceptable in many cases is a mystery.

This feature is indeed useful, but for the single layer externals
TortoiseSVN is not modifying the target repositories. An external is
defined as a property in my project repository, so pegging one level
of externals only affects my repo. If that external calls up another
level of externals then the only way to peg it would be to change the
property in the external's repository. Doing that would of course
affect all users of the external's repo who would then see a pegged
sub-external (excuse my made-up terminology here), which would be
unacceptable to just about any user..

The only way you could do it would be to create a private tag of the
external in its own repository with the sub-external pegged. In order
to do that you need write access to the external's repo.

If the sub-external also includes externals then you have to create
another tag for that, in possibly a 3rd repo. So you can see the
potential for this becoming a huge task with multiple opportunities
for failure. Of course it could be that all the externals are in the
same repo and you do have write permission, but the requirement to
create separate tags for the sub-externals remains.

> Tortoise already has a mechanism for creating an svn_external link that pegs the revision when creating a branch/tag. What the developers missed in that implementation is the case where such a link happens to contain yet another link. Now maybe there is something about the way that Tortoise is written that searching all links and pegging them is too difficult, cumbersome or something but it can't be impossible (witness svncopy.pl) nor can you really blame the user nor can you say that the Tortoise developers don't see this as a 'good feature' because they did add it as a feature to the tool.
> I'd simply like this to be listed as a bug in a currently supported feature of the tool that then gets fixed. I haven't heard yet why it's not a bug nor have I heard why the current behavior that only pegs 'top level' external is of practical value.

I would describe it as a limitation rather than a bug. It would be
nice to have but it is a much more difficult task than it appears to
be at first sight.


:       ___
:  oo  // \\      "De Chelonian Mobile"
: (_,\/ \_/ \     TortoiseSVN
:   \ \_/_\_/>    The coolest Interface to (Sub)Version Control
:   /_/   \_\     http://tortoisesvn.net
To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2013-02-21 10:25:20 CET

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