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

Re: Information requested about an svn:externals end case

From: Stefan Küng <tortoisesvn_at_gmail.com>
Date: Wed, 25 Jun 2008 19:56:41 +0200

Kathy wrote:
> I uncovered a defect or rather an issue (matter of opinion really)
> with the Subclipse plug-in for Eclipse. Would someone be interested in
> contacting me or Subclipse developers to help provide some information
> about how Tortoise handles the scenario to help us fix Subclipse?
> Since it's repeatable, I was able to compare it directly to Tortoise &
> Tortoise behaves as I would expect (it does not show false
> positives).
>
> Here was the issue that I reported to the Subclipse community for
> reference:
>
>
>
> Subject: Externals property bug - folder UI
>
> OS: Windows XP SP2
> Eclipse: 3.3.2 Europa Winter build
> SVN Team Provider Core: 1.2.4
> Subclipse: 1.2.4 (I think that's the same thing - different panel)
>
> Background:
> We have a collection of projects. Rather than checking dependencies
> into the repository multiple times, we have one project of just
> distributions, and all the other SVN projects reference the jars using
> the externals property. So a normal project looks like this:
>
> MyProject
> - externals
>
> Nothing else is checked into the externals folder - it just has the
> svn:externals property set to it.
>
> Issue:
> Sometimes the directories that are part of the external don't work
> correctly. When the referencing project's folder is too deep,
> Subclipse does behave as expected.
>
> Base scenario that works:
> <folder>/<folder> <URL>
> But this one would not:
> <folder>/<folder>/<folder> <URL>
> This also does not work:
> <folder>/<folder>/<folder>/<folder> <URL>
>
> It seems very reproducible. When I do a checkout for the first time,
> all of the folders & files come down in the right place. But the
> "middle" folder(s) appear unversioned in the UI. However, when I view
> the same folders in TortoiseSVN, this behavior does not occur.
>
> So in this scenario:
>
> MyProject/externals/<grandparent folder>/<parent folder>/<child
> folder>/myjar.jar
>
> Subsclipse behavior: <parent folder> will show as unversioned, and
> 'externals' will show as modified.
>
> In contrast, TortoiseSVN behavior: 'MyProject' and 'externals' both
> show as versioned but unmodified, <parent folder> has no markings at
> all, <child folder> shows as versioned but unmodified, and 'myjar.jar'
> shows as versioned and unmodified.

I don't really know how SubClipse handles this, that should be fixed by
the SubClipse developers.

All I can say is that svn_client_status() API returns different status
for externals, depending on what path is passed to the API. If a parent
path of an externals folder is passed, the externals folder status is
'external'. But if the external folder is passed to it, it will return
the 'real' status of that folder.

And it behaves differently again if the externals are in unversioned
subfolders.

The UI has to deal with that of course, otherwise you would get wrong
overlays.

Stefan

-- 
        ___
   oo  // \\      "De Chelonian Mobile"
  (_,\/ \_/ \     TortoiseSVN
    \ \_/_\_/>    The coolest Interface to (Sub)Version Control
    /_/   \_\     http://tortoisesvn.net

Received on 2008-06-25 19:57:14 CEST

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