TortoiseProc Replaces Differently Cased Name If Found In Directory

17 views
Skip to first unread message

automate...@cu.net

unread,
Mar 28, 2019, 10:06:28 AM3/28/19
to TortoiseSVN-dev
If you have enabled SetCaseSensitiveInfo on a directory and have two files which are different only based on case TortoiseProc will rename the file. I was unable to locate the location in code (but honestly I did not dig very much).

7:45:24.9226446 AM TortoiseProc.exe 9064 SetRenameInformationFile T:\8xDataTest\timsmasteR.zip SUCCESS ReplaceIfExists: True, FileName: T:\8xDataTest\timsmaster.zip

This can result in the loss of data.

However this behavior can be disabled by Going to Properties -> Advanced -> FixCaseRenames and setting this to false. It appears that others have encountered this and posted to StackOverflow here: https://stackoverflow.com/questions/12763444/changing-filename-case-with-tortoisesvn-on-windows

Perhaps the folder should be queried to see if SetCaseSensitiveInfo and automagically disable this feature for those folders to avoid data loss in these scenarios?

At very least it might be worth updating the FAQ here https://tortoisesvn.net/faq.html#casechange


As an aside case sensitivity is one of the ones specifically called out by Raymond Chen's "The bug farm" https://devblogs.microsoft.com/oldnewthing/20110920-00/?p=9603 I can refrain from posting additional reports as our issue is resolved; Thank you for this great tool!

"A lot of testers suddenly realized that case sensitivity is a veritable bug farm on a project that thinks it is ready to go, but has not yet tried it."

Stefan

unread,
Mar 28, 2019, 11:54:40 AM3/28/19
to TortoiseSVN-dev
Reply all
Reply to author
Forward
0 new messages