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

Re: Do we expect default ignores when no ignores are defined

From: Paul Burba <ptburba_at_gmail.com>
Date: Fri, 11 Jan 2013 17:33:25 -0500

On Fri, Jan 11, 2013 at 5:09 PM, C. Michael Pilato <cmpilato_at_collab.net> wrote:
> On 01/11/2013 04:28 PM, Paul Burba wrote:
>> I'm merely pointing out that the current behavior regarding the
>> *default* is bizarre IMO. I could have the global-ignores option
>> *purposefully* commented out/not-present in all four Windows configs
>> because I don't want to ignore anything, but Subversion tries to
>> outwit me and assumes the default. Seems completely
>> wrong/counter-intuitive to me.
>
> Yeah, that's the thing with .INI files -- if you comment out a line, it
> doesn't exist. And a line which doesn't exists precisely means, "Please
> give me the default behavior." So Subversion is giving you exactly that.

Ah, that bit of INI-fu wasn't apparent to me.

> The complaint you mean to make is not that Subversion is offering the
> default behavior in this situation -- it's that the default behavior itself
> was perhaps ill-chosen and non-intuitive. If you claimed that the
> hard-coded default should instead be the empty string, I'm sure you'd find
> widespread agreement across both the dev and user landscapes.

That's more-or-less what I was shooting for :-)

> But that's not the default, and the reason for that goes waaaaay back to
> "behaviors we chose to inherit from CVS". :-(
>
>> Look at it this way: Assume we only have the per-user config present.
>> You don't find it odd that these two config files behave differently?
>>
>> [[[
>> [miscellany]
>> # Hey, I don't want to ignore anything, so comment out the default!
>> # global-ignores = *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc
>> *.pyo __pycache__ *.rej *~ #*# .#* .*.swp .DS_Store
>> ]]]
>>
>> [[[
>> [miscellany]
>> # Hey, I don't want to ignore anything, so set global-ignores to an empty val!
>> global-ignores =
>> ]]]
>
> Personally, I fully expect these two configurations to behave differently.
> But I suspect that that's because I'm the kind of guys who believes it to be
> a best-practice of config file templates to show the default value of the
> setting in the commented out text. I also don't tend to "uncomment" such
> lines in config files at all -- I add new lines that represent what I want,
> leaving the commented-out, presumed-to-show-the-default-value lines for
> future reference. My config file would likely read like so:
>
> ### Set global-ignores to a set of whitespace-delimited globs
> ### which Subversion will ignore in its 'status' output, and
> ### while importing or adding files and directories.
> ### '*' matches leading dots, e.g. '*.rej' matches '.foo.rej'.
> # global-ignores = *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo
> __pycache__ *.rej *~ #*# .#* .*.swp .DS_Store
> global-ignores =
>
> :-)
>
> --
> C. Michael Pilato <cmpilato_at_collab.net>
> CollabNet <> www.collab.net <> Enterprise Cloud Development
>

-- 
Paul T. Burba
CollabNet, Inc. -- www.collab.net -- Enterprise Cloud Development
Skype: ptburba
Received on 2013-01-11 23:33:57 CET

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

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