I need to know how end of line (EOL) sequences are determined in IDEA/Subversion. The issue here being that Windoze (all variants) uses \r\n to indicate an end of line in text files, whereas every other modern operating system uses simply \n.
Even more confusing, Subversion can be configured to muck things up by sometimes changing EOLs on a per user basis (the so-called "native" EOL option; usually, but not always, a bad idea).
I had a previous posting on a related issue
in which someone pointed out to me one way that you can specify EOL in IDEA/Subversion.
But it turns out that there is at least these ways:
1) you can edit your code style (e.g. the Global code style) to create all new files with some EOL setting
2) you can configure IDEA/Subversion to have (or lack) the global property
across all files. Do this in IDEA by
Version Control --> Subversion --> Edit Properties
3) you can configure Subversion to have (or lack) the "semi-global" property
across all files of a given type (i.e. extension) by editing your Subversion config file. Mine is located in
C:\Documents and Settings\CaptainMidnight\Application Data\Subversion\config
and the relevant section of that file currently looks like
Obviously, you can comment out or uncomment whatever lines you want to achieve whatever effect you desire.
4) you can configure IDEA/Subversion to have (or lack) the local property
for any given file. Do this in IDEA by going to your projeect pane and right click on the target file and select
Subversion --> Edit Properties
and then edit as desired.
Question A: is the above list the complete number of ways that EOLs can be specified?
Question B: what is the priority order if multiple EOL specifications are present?
I wrote the above list in my guess as to what would be ascending order, if I were writing IDEA, namely:
if 4) is used (local file has svn:eol-style defined) then this trumps all
if 4) is absent but 3) is used (config file has svn:eol-style defined for your file type) then this trumps all
if 4) and 3) are absent but 2) is used (IDEA file has svn:eol-style defined across all files) then this trumps all
if 4), 3), and 2) are absent then 1) is used (your IDEA code setting)
Please confirm or deny the above understanding, if you know.
Question C: is there any way that you can query Subversion and find out 4), namely, which individual files have svn:eol-style specified for them? Altho I would prefer to do this from IDEA, it is OK if I need to use a Subversion command line tool.