Case-Insensitive warning on Windows/NTFS
I have tried using cygwin, msysgit bash, and windows cmd.exe shells, and all of them the verify reports:
You appear to be running on a case-insensitive file-system. This is unsupported, can result in data loss.
I don't think it is properly determining if the file system is case sensitive or not. It is looking at if the OS is case sensitive or not. I'm going to call this a major bug, since it might deter most of your windows users from using this tool, unless I'm somehow inaccurate.
Comments (34)
-
Account Deactivated -
reporter @pepoirot - thanks for your help! I am on Windows 7 64-bit, NTFS file system. I have a few more questions then - I will try to google this myself, but maybe you know off the top of your head:
1) Do I need to heed that warning then and try to figure out a way to do this conversion on a fully case-sensitive file system (or running a program in a case-sensitive way somehow) - or should the migration work since NTFS is case-preserving?
2) If the answer to (1) is yes, then how do I get a case-preserving file system on Windows 7 then? Is there a boot option I can set or something?
3) Is the migration guide over at Atlassian Git help pages wrong then in its statement that: If you’re not running OS X, all you need to do is create a directory on your local machine called ~/GitMigration. This is where you will perform the conversion. After that, you can skip to the next section. https://www.atlassian.com/git/migration#!migration-prepare
-
reporter Well, I ended up just doing this whole thing on a Linux VM. I guess I propose that the documentation be changed so that it doesn't imply that everything will be fine as long as you aren't OS X. It should say "find a Linux box."
-
Account Deactivated @adamnoffie
1) The warning is essential if you want to guarantee a correct conversion. A case-preserving file system is not sufficient, since giving two files differencing only the case of their names (such as
foo\bar.txt
andFoo\Bar.txt
), trying to retrieve either file by name would always return the same file. (For example looking upfoo\bar.txt
orFoo\Bat.txt
would always return the same file, for examplefoo\bar.txt
). As a result,git-svn
will merge the history of one file into the other during the conversion to Git.2) A quick search online does not give a authoritative answer. It is probably best to ask a friendly knowledgeable sysadmin for more information.
3) I reported an internal issue regarding this.
Thanks
-
Account Deactivated - changed status to resolved
-
Dear Pierre-Etienne Poirot,
I am confused. I got also the warning Case-Insensitive warning on Windows 7 64bit /NTFS and try to resolve this problem to use workaround provided in this tutorial. Under Section "Mount a case-sensitive disk image" there was a option/command for the jar ->
svn-migration-scripts.jar create-disk-image
this is not anymore exisiting or only available for OS X?
Kind regards, Jochen
-
Account Deactivated this is not anymore exisiting or only available for OS X?
This is only available on OS X.
-
Why has this been marked as Resolved? Was a solution provided for Windows operating systems? The migration tutorial says:
If you’re not running OS X, all you need to do is create a directory on your local machine called ~/GitMigration. This is where you will perform the conversion. After that, you can skip to the next section.
-
Account Deactivated @WilliamHowell I re-opened the internal issue to have this fixed (WFT-10518). It seems the person assigned to the issue was not knowledgeable about the problem. In the mean time, the recommendation is to perform the migration over a Linux VM.
-
Can you re-open this ticket for us users, who do not have access to that internal ticket?
-
Account Deactivated - changed status to open
-
Is there any solution for this issue?
-
I am getting the same problem. Switched to a VM box.
But the documentation must be updated to say that the issues are not only with an OS X machine plus should also say that the create-disk-image command is only available on OS X.
-
I am on leave until 9 Feb 2015. If your email is urgent please contact glenn@gen3media.com.
-
It's been more then a year now, when will this be addressed? Either update the migration guide to say it doesn't properly work on NTFS Windows disks or add some guide to how to make it work on NTFS. Following the migration guide (https://www.atlassian.com/git/tutorials/migrating-prepare/) wasted more than a day for our project manager.
-
reporter Erik - does it work on older FAT32 partitions? For anyone that stumbles on this, I think right now the simplest solution is still just find a Linux machine or VM - you can temporarily create one yourself using free VirtualBox and Ubuntu Live CD or similar solutions if you need.
-
Don't have a FAT32 partition to try on, so I'm not 100% but I don't think FAT32 are case-sensitive.
Yeah we will do the merge on a linux machine instead but the migration guide really needs to be updated with this information.
-
Has this been resolved yet? I don't have access to a linux machine nor a VM.
-
@pepoirot @ssaasen @hgiddens This has been an issue for a year and a half. The fix can be as simple as at least changing the migration guide to make it clear that this process is only supported on Linux. Many others and I have wasted significant time on what could be addressed in 15 minutes of editing the migration guide.
Overall, I have to say I am fairly disappointed in Atlassian's stewardship of this project. I would think Atlassian would have a vested interest in making the process of migrating from Subversion to Bitbucket as easy as possible. Yet the last commit here was February 2014. There are multiple pull requests without response. Most issues haven't even been triaged.
In the end, I had to do a lot of research and create my own migration strategy. I imagine many others have a similar story. We're all big boys here, and if that's what we need to do then fine. But I think it's pretty misleading to have the official migration guide point to a project that seems to a) have some pretty big known issues and b) be abandoned.
-
Account Deactivated It's 2016 and the issue is still there. The document is not updated either. If the document simply said that guide was not for Windows I wouldn't waste so much time reading it and googling a work arround.
-
Not really expecting this to be answered.
But if the SVN repository was solely created and used/modified on a Windows box, aren't the names within the repository entirely guaranteed to not have conflicts? (Foo/Bar.txt and foo/bar.txt).
It would seem if you can guarantee that everything has always been in Windows then there can't possibly be a problem.
If this is completely wrong for something I have missed please respond.
Thanks,
-
Come on. I wasted a lot of time on this until I found this thread.
You should put a sentence in the "Prepare your environment for the migration" -section (https://www.atlassian.com/git/tutorials/migrating-overview ) informing the reader that the migration-environment has to be a case-sensitive filesystem, and include a link to a tutorial for using HyperV for windows users.
-
@pepoirot @ssaasen @hgiddens Seriously guys...WTF?! It should take 2 minutes to update the documentation as noted time and time again in this thread. Jibbers Crabst!!
Do you even give a flying spaghetti monster that this has been an unresolved issue for over 2 svn-loving years? Please show us that you do, in fact, care just a little bit and update the documentation so no one else wastes time on this.
Do it. Now. (Pretty please?)
-
@pepoirot @ssaasen I agree with the previous comments, please just update the tutorial mentioning there is no workaround for Windows. It has been 2.5 years already.
-
Common guys, please update your documentation. The migration doesnt work in Windows, should have told just to go for Linux of use a VM in Windows.
-
Doesn't seem like anything is going to happen in regard to this issue.
@riley_huddleston this is what I'm expecting as well.
-
Account Deactivated What a joke that we all ended up googling an issue that could have easily been avoided by 1 line in the official documentation.
Correct documentation and robust software is the reason most of us want to try migrating away from SVN to BitBucket.
Hard to believe there has been so much pleading for corrections + negative experiences described in this thread and Atlassian have done nothing!
-
It's just an unbelivable fail by Atlassian...
-
Its officially more than 3 years and the documentation is still incorrect
-
4 years and still no correction in documentation. This is quite sad.
-
Account Deleted 4.5 Years now, also wasted a whole morning on setup. Many thanks!
-
6.5 years or more and still an issue on Windows. Kindly facilitate a solution to this as the option to create a case-insensitive drive is not available as part of the script on Windows
-
With
fsutil.exe
you can create a case-sensitive directory under Win 10 - see: https://stackoverflow.com/a/63684263/2294031 -
Documentation is still outdated, my half day on googling already spent…. well, thank you
- Log in to comment
@adamnoffie this is the code to test for the case sensitivity:
Verify.checkCaseSensitivity()
.That you see the same case-sensitivity warning through cygwin, msygit bash or the cmd.exe shell is expected if the target is the same directory or same partition. Can you clarify which type of file system the target directory is on?
For info, FAT and its variations are not case-sensitive. NTFS is case-preserving but not necessarily case-sensitive depending on whether you interact with it through the Win32 or the POSIX subsystem: see KB-100625 and Case preservation.
Based on the code above, it seems that Java uses the former.