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

Re: svn properties display bugs

From: cpengr <cp.engr0_at_gmail.com>
Date: Fri, 9 Jan 2015 17:10:56 -0500

Thanks for the prompt response.

Re - "BUG 2":

> The properties dialog shows the inheritance of properties correctly.
> However what you expect it to do is to show how the properties *behave*.
> Yes, the svn:ignore does not work recursively. But the property *is*
> inherited - it's just not used that way.

Sounds like a bad svn design decision to me. If child dirs don't behave as
if they inherit svn:ignore from their ancestors, then why should they
actually inherit it? Am I missing something?

Even if there's a good svn rationale, what is the TSVN rationale? This
mismatch between apparent/expected and actual behavior caused me
considerable confusion as I tried to setup some custom ignoring. (I'm
already having work around svn's lack of proper whitelisting...)

Re - "BUG 1":

> And while the svn:global-ignores property works like its data is
> 'merged' down from all the inherited ones to the one that is set
> directly on the folder, the TSVN properties dialog does not show those:
> it only shows the inherited properties if the same property is not set
> on that particular item.
> Also, it only shows the inherited property that's closest to the item
> that the dialog is shown for. - I just haven't found a good way UI-wise
> to show multiple inherited properties.

Why not just add additional rows? See attached proposal.

Regards,

cpengr
On Jan 9, 2015 2:20 PM, "Stefan Küng" <tortoisesvn_at_gmail.com> wrote:

> On 09.01.2015 19:27, cpengr wrote:
> > Hello,
> >
> > I believe I have found (possibly) two bugs in TortoiseSVN, relating to
> > the display of inherited properties. (For svn:ignore and
> > svn:global-ignores, at least.) I can imagine they may both be caused by
> > following the same default behavior.
> >
> > I'm using the latest TortoiseSVN (1.8.10, Build 26129 - 64 bit,
> > 2014/12/17), on Windows 7 Pro x64 w/ SP1.
> >
> > For this message, I'll use the following abbreviations:
> >
> > - "RCF": right-click a file (or subdir), choose TortoiseSVN...
> > - "RCD": right-click in the empty space of a folder or subfolder,
> > choose TortoiseSVN...
> > - "Properties dialog": launched by doing RCD -> Properties.
> >
> > BACKGROUND:
> >
> > As I understand it:
> >
> > Bg1. When you RCF -> Add to ignore list, it modifies the svn properties
> > of the folder containing the file (or subdir).
> > Bg1.a. Recursively -> svn:global-ignores.
> > Bg1.b. Not recursively -> svn:ignore.
> >
> > Bg2. Of those two properties, only svn:global-ignores should ever be
> > inherited from a parent dir.
> >
> > Note, for both bugs, it's only the display that's incorrect. The
> > properties are working correctly, AFAICT.
> >
> > ISSUES:
> >
> > Note, for both issues, I got the same results by either of the following
> > methods:
> > - RCF -> Add to ignore list
> > - Adding properties manually via RCD -> Properties -> New... -> Other.
> >
> > BUG 1: Inherited svn:global-ignores in a child dir's Properties dialog
> > disappear once a new svn:global-ignores has been set in that dir.
> >
> > Steps to reproduce:
> >
> > 1. Create a new repo, with dir d1.
> > 2. Create files:
> > ig
> > d1/ig
> > d1/d1_ig
> >
> > 3. From the root dir,
> > 3.a. RCF (ig) -> Add to ignore (recursively).
> > 3.b. RCD -> Properties. (Shows svn:global-ignores with value "ig", not
> > inherited - as expected.)
> >
> > 4. From d1,
> > 4.a. RCD -> Properties. (Shows svn:global-ignores with value "ig",
> > inherited - as expected.)
> > 4.b. RCF (d1_ig) -> Add to ignore (recursively).
> > 4.c. RCD -> Properties. (BUG: Shows *only* svn:global-ignores with value
> > "d1_ig", inherited. Inherited "ig" disappeared.)
> >
> > Note that for grandchild dirs, I would expect to see global-ignores
> > inherited from parents and grandparents, etc...
> >
> > BUG 2: Properties dialog for a child dir shows svn:ignore inheriting
> > from parent dirs, unless/until it is set in the child dir. (I think this
> > property is never inherited, and so should never display as such.)
> >
> > Steps to reproduce:
> >
> > 1. Create a new repo, with dir d1.
> > 2. Create files:
> > ig
> > d1/ig
> > d1/d1_ig
> >
> > 3. From the root dir,
> > 3.a. RCF (ig) -> Add to ignore (*not* recursively).
> > 3.b. RCD -> Properties. (Shows svn:ignore with value "ig", not inherited
> > - as expected.)
> >
> > 4. From d1,
> > 4.a. RCD -> Properties. (BUG: Shows svn:ignore with value "ig",
> > inherited. See attached pic. I think this should never happen.)
> > 4.b. RCF (d1_ig) -> Add to ignore (*not* recursively).
> > 4.c. RCD -> Properties. (Shows only svn:ignore with value "d1_ig" - as
> > expected.)
>
> The properties dialog shows the inheritance of properties correctly.
> However what you expect it to do is to show how the properties *behave*.
> Yes, the svn:ignore does not work recursively. But the property *is*
> inherited - it's just not used that way.
> See here:
>
> http://svnbook.red-bean.com/nightly/en/svn.advanced.props.html#svn.advanced.props.inheritable
>
> And while the svn:global-ignores property works like its data is
> 'merged' down from all the inherited ones to the one that is set
> directly on the folder, the TSVN properties dialog does not show those:
> it only shows the inherited properties if the same property is not set
> on that particular item.
> Also, it only shows the inherited property that's closest to the item
> that the dialog is shown for. - I just haven't found a good way UI-wise
> to show multiple inherited properties.
>
> Stefan
>
> --
> ___
> oo // \\ "De Chelonian Mobile"
> (_,\/ \_/ \ TortoiseSVN
> \ \_/_\_/> The coolest interface to (Sub)version control
> /_/ \_\ http://tortoisesvn.net
>
> ------------------------------------------------------
>
> http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=3093940
>
> To unsubscribe from this discussion, e-mail: [
> users-unsubscribe_at_tortoisesvn.tigris.org].
>

------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=3093945

To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_tortoisesvn.tigris.org].

2015-01-09__global-ignore_inheritance_proposal.png
Received on 2015-01-10 09:54:08 CET

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

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