+13  A: 

Unfortunately, Subversion is case-sensitive. This is due to the fact that files from Subversion can be checked out on both case-sensitive file systems (e.g., *nix) and case-insensitive file systems (e.g., Windows, Mac).

This script may help you avoid problems when you check in files. If it doesn't solve your problem, my best suggestion is to write a little script to make sure that all extensions are lowercase and run it every time before you check in/check out. It'll be a PITA, but maybe your best bet.

jacobko
TortoiseSVN has an case-adjustment feature. If TSVN detects that a filename in the working copy was renamed in case only, it will restore the case on the file. (The command line SVN tools don't do this.)
msemack
+2  A: 

I use TortoiseSVN with VFP, and it mostly-seamlessly handles the case flipping. The only time it doesn't is if I have the file open in the IDE when I try to do the commit: the file lock VFP holds confuses it. Is this where your problem comes in, or are there other issues?

I did a presentation at FoxForward last year about using VFP with Subversion: most of the presentation dealt with the command line, but there are a couple of slides at the end that have links to tools that help you work with Subversion in VFP. http://docs.google.com/Presentation?id=dfxkh6x4_3ghnqc4

Thanks for the insight! VFP's binary-treated tables, forms, etc. are a challenge to work with in SVN.
Kit Roed
A: 

Why can't you just rename all those files to .PRG then once and for all? Or will FoxPro randomly change it to lowercase as well?

Lasse V. Karlsen
+1  A: 

Kit, you comment above that VFP's binary-based source files are tough to work with in Subversion. The link I gave above mentions a couple of tools to make it easier, but the one I work with is Christof Wollenhaupt's TwoFox utility -- it converts a VFP project to text-only. You have to run it manually, but I don't have a problem with that.

http://www.foxpert.com/docs/cvs.en.htm

SarekOfVulcan
Thanks Garret, however the download link for TwoFox is broken on the page you linked for. The conversion tool would be very handy as I was dealing with FoxPro-Subversion issues just this morning! Any other place I might be able to get a download for TwoFox or is there a better option out there?
Kit Roed
Sorry I didn't see this before -- for the record, I just checked Christof's site, and the download is still good. I'm guessing it was just a temporary glitch....
SarekOfVulcan
+2  A: 

I believe the random upper and lower case on the extensions isn't random at all. I remember testing on this. If you modify a program from the project manager. By clicking on the modify button let's say. And then save the changes the extension is lower case. If you do a modify command from the command window and save the changes the extension is upper case. Apparently the coders at Microsoft didn't worry about the extension case being the same.

This confirms the pattern I've seen since I posted this question, thank you.
Kit Roed
+1  A: 

Windows does support case sensitivity, but you must send it the correct POSIX flags on CreateFile from the Windows API! A registry key may need changed (SFU/Tools for Unix and Ultimate Windows 7 has this registry entry already set so windows supports case sensitive file names).

Windows is designed off of Unix, but things such as Explorer.exe and other programs are designed to disallow case sensitivity for backwards compatibility and security (mostly when dealing with dos executing notepad.exe vs. NOTEPAD.EXE, where all caps is a virus or malware).

But Vista+ has security attributes which makes this obsolete.

TortiousSVN just doesn't support passing this posix flag while making and renaming files.

TamusJRoyce
A: 

Nope you sure can't. SVN is Case-Sensative unless you were to rewrite the code somehow...it is open-source. lol gl

dewalla
A: 

Why does TortoiseSVN 1.4.5 not have a problem with case while newer versions do? I have an svn repository where a driver file is named configs.php and the corresponding class file is named Configs.php, in the same directory. Checks out just fine in 1.4.5 but in 1.6.10 it balks when it gets to that file and won't continue.

mutatron