{"thread":{"id":"27627","subject":"Copying Git repository from Linux to Windows.","startedAt":"2011-06-15T09:28:34Z","lastAt":"2011-06-20T19:57:00Z","messageCount":17,"participants":["viresh kumar","Andreas Ericsson","Jakub Narebski","Erik Faye-Lund","Philippe Vaucher","Johannes Sixt","Phil Hord"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"170046","messageId":"4DF87B42.1020004@st.com","threadId":"27627","inReplyTo":null,"subject":"Copying Git repository from Linux to Windows.","fromName":"viresh kumar","fromEmail":"viresh.kumar@st.com","sentAt":"2011-06-15T09:28:34Z","receivedAt":"2011-06-15T09:28:34Z","isPatch":false,"sender":{"key":"viresh.kumar@st.com","avatar":null},"body":"Hello,\n\nI wanted to copy my complete Linux GIT repo from Linux PC to Windows. I also wanted everything\nrelated to remote branches too, so need to copy and clone and fetch wouldn't work.\n\nI don't have windows on same network, so i need to copy to memory stick and then to Windows PC.\n\nAfter completing copy operation on mem stick, i found something strange.\n- git branch shows correct results and is exactly same of state at Linux machine.\n- git log is also fine.\n- git status, shows me a lot of files are modified, which is not present in Linux.\n- git reset --hard also doesn't work and fails with following error.\n\n\n$ git reset --hard HEAD\nerror: unable to create symlink arch/microblaze/boot/dts/system.dts (Operation not permitted)\nChecking out files: 100% (36696/36696), done.\nfatal: Could not reset index file to revision 'HEAD'.\n\n\nAny help about this issue would be very helpful.\n\n-- \nviresh\n"},{"id":"170049","messageId":"4DF87FB6.2080503@op5.se","threadId":"27627","inReplyTo":"4DF87B42.1020004@st.com","subject":"Re: Copying Git repository from Linux to Windows.","fromName":"Andreas Ericsson","fromEmail":"ae@op5.se","sentAt":"2011-06-15T09:47:34Z","receivedAt":"2011-06-15T09:47:34Z","isPatch":false,"sender":{"key":"ae@op5.se","avatar":"https://gravatar.com/avatar/426e89595c75a8f5252dd0c989e5fabe5bcac616e68557427ad9aef6b0ca342a?d=mp&s=160"},"body":"On 06/15/2011 11:28 AM, viresh kumar wrote:\n> Hello,\n> \n> I wanted to copy my complete Linux GIT repo from Linux PC to Windows. I also wanted everything\n> related to remote branches too, so need to copy and clone and fetch wouldn't work.\n> \n> I don't have windows on same network, so i need to copy to memory stick and then to Windows PC.\n> \n> After completing copy operation on mem stick, i found something strange.\n> - git branch shows correct results and is exactly same of state at Linux machine.\n> - git log is also fine.\n> - git status, shows me a lot of files are modified, which is not present in Linux.\n> - git reset --hard also doesn't work and fails with following error.\n> \n> \n> $ git reset --hard HEAD\n> error: unable to create symlink arch/microblaze/boot/dts/system.dts (Operation not permitted)\n> Checking out files: 100% (36696/36696), done.\n> fatal: Could not reset index file to revision 'HEAD'.\n> \n> \n> Any help about this issue would be very helpful.\n> \n\nThe Linux kernel repository isn't very good to work with on Windows\nmachines, or anywhere where the filesystem is either case-insensitive\nor case-agnostic.\n\nOne reason is that it contains symlink. The other is that there are\nfiles sharing the same name and only differ in case.\n\nI suppose the main thought behind it is that Linux kernel hackers\nalmost exclusively use Linux (which has sane filesystems) to do\ntheir work, so it hasn't been rectified in the 5 or so years it has\nbeen a known (non-)problem.\n\n-- \nAndreas Ericsson                   andreas.ericsson@op5.se\nOP5 AB                             www.op5.se\nTel: +46 8-230225                  Fax: +46 8-230231\n\nConsidering the successes of the wars on alcohol, poverty, drugs and\nterror, I think we should give some serious thought to declaring war\non peace.\n"},{"id":"170053","messageId":"m3ei2vv0nw.fsf@localhost.localdomain","threadId":"27627","inReplyTo":"4DF87B42.1020004@st.com","subject":"Re: Copying Git repository from Linux to Windows.","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2011-06-15T10:40:23Z","receivedAt":"2011-06-15T10:40:23Z","isPatch":false,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"viresh kumar <viresh.kumar@st.com> writes:\n\n> I wanted to copy my complete Linux GIT repo from Linux PC to Windows. I also wanted everything\n> related to remote branches too, so need to copy and clone and fetch wouldn't work.\n> \n> I don't have windows on same network, so i need to copy to memory stick and then to Windows PC.\n> \n> After completing copy operation on mem stick, i found something strange.\n> - git branch shows correct results and is exactly same of state at Linux machine.\n> - git log is also fine.\n> - git status, shows me a lot of files are modified, which is not present in Linux.\n\nThat is probably because stat information is stale... or stat\ninformation doesn't work.  Does second \"git status\" still show files\nas modified?\n\n> - git reset --hard also doesn't work and fails with following error.\n> \n> \n> $ git reset --hard HEAD\n> error: unable to create symlink arch/microblaze/boot/dts/system.dts (Operation not permitted)\n> Checking out files: 100% (36696/36696), done.\n> fatal: Could not reset index file to revision 'HEAD'.\n\nTry setting `core.symlinks` to false, or just try\n\n $ git -c core.symlinks=false reset --hard HEAD\n\nNotice that your repository includes symlinks.\n\n\nBTW. what filesystem do you use?\n\n-- \nJakub Narebski\nPoland\nShadeHawk on #git\n"},{"id":"170055","messageId":"4DF891CC.1040700@st.com","threadId":"27627","inReplyTo":"m3ei2vv0nw.fsf@localhost.localdomain","subject":"Re: Copying Git repository from Linux to Windows.","fromName":"viresh kumar","fromEmail":"viresh.kumar@st.com","sentAt":"2011-06-15T11:04:44Z","receivedAt":"2011-06-15T11:04:44Z","isPatch":false,"sender":{"key":"viresh.kumar@st.com","avatar":null},"body":"On 06/15/2011 04:10 PM, Jakub Narebski wrote:\n> viresh kumar <viresh.kumar@st.com> writes:\n>> After completing copy operation on mem stick, i found something strange.\n>> - git branch shows correct results and is exactly same of state at Linux machine.\n>> - git log is also fine.\n>> - git status, shows me a lot of files are modified, which is not present in Linux.\n> \n> That is probably because stat information is stale... or stat\n> information doesn't work.  Does second \"git status\" still show files\n> as modified?\n> \n\nYes. The files status is same.\n\n>> - git reset --hard also doesn't work and fails with following error.\n>>\n>> $ git reset --hard HEAD\n>> error: unable to create symlink arch/microblaze/boot/dts/system.dts (Operation not permitted)\n>> Checking out files: 100% (36696/36696), done.\n>> fatal: Could not reset index file to revision 'HEAD'.\n> \n> Try setting `core.symlinks` to false, or just try\n> \n>  $ git -c core.symlinks=false reset --hard HEAD\n> \n> Notice that your repository includes symlinks.\n> \n> \n> BTW. what filesystem do you use?\n> \n\nIt was FAT on memory stick as FAT is also there in Windows PC.\nMore observation: All files marked modified had only changes in file permissions.\ni.e. 755 instead of 644. chmod doesn't work with FAT so can't change there permissions\nnow.\n\nProblem is not only for symlinks but standard c files too.\n\n-- \nviresh\n"},{"id":"170057","messageId":"BANLkTik+oUb1QpVTwJfB30_8FsW=4ZVTxA@mail.gmail.com","threadId":"27627","inReplyTo":"4DF891CC.1040700@st.com","subject":"Re: Copying Git repository from Linux to Windows.","fromName":"Erik Faye-Lund","fromEmail":"kusmabite@gmail.com","sentAt":"2011-06-15T11:26:54Z","receivedAt":"2011-06-15T11:26:54Z","isPatch":false,"sender":{"key":"kusmabite@gmail.com","avatar":"https://avatars.githubusercontent.com/u/47073?v=4"},"body":"On Wed, Jun 15, 2011 at 1:04 PM, viresh kumar <viresh.kumar@st.com> wrote:\n> On 06/15/2011 04:10 PM, Jakub Narebski wrote:\n>> BTW. what filesystem do you use?\n>>\n>\n> It was FAT on memory stick as FAT is also there in Windows PC.\n> More observation: All files marked modified had only changes in file permissions.\n> i.e. 755 instead of 644. chmod doesn't work with FAT so can't change there permissions\n> now.\n>\n> Problem is not only for symlinks but standard c files too.\n\nSounds like you should try \"git config core.filemode false\":\n\n\"core.fileMode:\n     If false, the executable bit differences between the index and\nthe working copy are ignored; useful on broken filesystems like FAT\"\n\n(from from http://kernel.org/pub/software/scm/git/docs/git-config.html)\n"},{"id":"170058","messageId":"201106151329.53839.jnareb@gmail.com","threadId":"27627","inReplyTo":"4DF891CC.1040700@st.com","subject":"Re: Copying Git repository from Linux to Windows.","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2011-06-15T11:29:52Z","receivedAt":"2011-06-15T11:29:52Z","isPatch":false,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"On Wed, 15 June 2011, viresh kumar wrote:\n> On 06/15/2011 04:10 PM, Jakub Narebski wrote:\n>> viresh kumar <viresh.kumar@st.com> writes:\n\n>>> After completing copy operation on mem stick, i found something strange.\n>>> - git branch shows correct results and is exactly same of state at Linux machine.\n>>> - git log is also fine.\n>>> - git status, shows me a lot of files are modified, which is not present in Linux.\n>> \n>> That is probably because stat information is stale... or stat\n>> information doesn't work.  Does second \"git status\" still show files\n>> as modified?\n> \n> Yes. The files status is same.\n> \n>>> - git reset --hard also doesn't work and fails with following error.\n>>>\n>>> $ git reset --hard HEAD\n>>> error: unable to create symlink arch/microblaze/boot/dts/system.dts (Operation not permitted)\n>>> Checking out files: 100% (36696/36696), done.\n>>> fatal: Could not reset index file to revision 'HEAD'.\n>> \n>> Try setting `core.symlinks` to false, or just try\n>> \n>>  $ git -c core.symlinks=false reset --hard HEAD\n[...]\n>> BTW. what filesystem do you use?\n>> \n> \n> It was FAT on memory stick as FAT is also there in Windows PC.\n> More observation: All files marked modified had only changes in file permissions.\n> i.e. 755 instead of 644. chmod doesn't work with FAT so can't change there permissions\n> now.\n\nAh. This is caused by the fact that FAT doesn't store executable\npermission.\n\n> Problem is not only for symlinks but standard c files too.\n\nSo beside setting `core.symlinks` to false, you would have also set\n`core.filemode` to false (and perhaps also `core.ignorecase` to true).\n\nYou might also want to set `core.ignoreStat` to true to try to increase\nperformace.\n\nP.S. git-bundle ddidn't work?\n\n-- \nJakub Narebski\nPoland\n"},{"id":"170060","messageId":"4DF89F56.3060200@st.com","threadId":"27627","inReplyTo":"BANLkTik+oUb1QpVTwJfB30_8FsW=4ZVTxA@mail.gmail.com","subject":"Re: Copying Git repository from Linux to Windows.","fromName":"viresh kumar","fromEmail":"viresh.kumar@st.com","sentAt":"2011-06-15T12:02:30Z","receivedAt":"2011-06-15T12:02:30Z","isPatch":false,"sender":{"key":"viresh.kumar@st.com","avatar":null},"body":"On 06/15/2011 04:56 PM, Erik Faye-Lund wrote:\n> On Wed, Jun 15, 2011 at 1:04 PM, viresh kumar <viresh.kumar@st.com> wrote:\n>> On 06/15/2011 04:10 PM, Jakub Narebski wrote:\n> Sounds like you should try \"git config core.filemode false\":\n> \n> \"core.fileMode:\n>      If false, the executable bit differences between the index and\n> the working copy are ignored; useful on broken filesystems like FAT\"\n> \n> (from from http://kernel.org/pub/software/scm/git/docs/git-config.html)\n> .\n> \n\n\nOn 06/15/2011 04:59 PM, Jakub Narebski wrote:\n> On Wed, 15 June 2011, viresh kumar wrote:\n>> On 06/15/2011 04:10 PM, Jakub Narebski wrote:\n>>> viresh kumar <viresh.kumar@st.com> writes:\n> Ah. This is caused by the fact that FAT doesn't store executable\n> permission.\n> \n> So beside setting `core.symlinks` to false, you would have also set\n> `core.filemode` to false (and perhaps also `core.ignorecase` to true).\n> \n> You might also want to set `core.ignoreStat` to true to try to increase\n> performace.\n> \n> P.S. git-bundle ddidn't work?\n\ndidn't tried that. :(\n\n> \n\nGuys, thanks for your inputs. core.filemode was new to me.\nI tried to resolved issue in some other way.\nI have tarred kernel before copying to memory stick. And after untarring kernel\non windows, file permission are not changed for all files with permission 644 originally.\n\nThere are some files in kernel whose permissions are 755 and they are converted to 644.\nAnd are shown in git status as _modified_.\n\nI got rid of them with core.filemode as false, but there is one more issue, as pointed out by\nAndreas. There are few files in kernel with same file name but in different _cases_ (one in caps\nand another in small.) and so i am getting issues with these now.\n\nAnd don't have any idea how to get rid of that? And why does kernel have such file names at all?\n\n-- \nviresh\n"},{"id":"170061","messageId":"4DF8A896.7080708@op5.se","threadId":"27627","inReplyTo":"4DF89F56.3060200@st.com","subject":"Re: Copying Git repository from Linux to Windows.","fromName":"Andreas Ericsson","fromEmail":"ae@op5.se","sentAt":"2011-06-15T12:41:58Z","receivedAt":"2011-06-15T12:41:58Z","isPatch":false,"sender":{"key":"ae@op5.se","avatar":"https://gravatar.com/avatar/426e89595c75a8f5252dd0c989e5fabe5bcac616e68557427ad9aef6b0ca342a?d=mp&s=160"},"body":"On 06/15/2011 02:02 PM, viresh kumar wrote:\n> \n> I got rid of them with core.filemode as false, but there is one more issue, as pointed out by\n> Andreas. There are few files in kernel with same file name but in different _cases_ (one in caps\n> and another in small.) and so i am getting issues with these now.\n> \n> And don't have any idea how to get rid of that?\n\nYou can't. git dubs such filesystems as \"retarded\" and simply can't\nwork around it. Imo, that's the only sensible thing to do.\n\n> And why does kernel have such file names at all?\n> \n\nBecause linux kernel developers are expected to work with linux\ndevelopment work using linux and nowhere near enough find it an\nactual problem for anyone to care about fixing it. Note that all\nbuild-scripts and configuration stuff will have to be fixed as\nwell. Complaining about it on lkml will probably have very little\neffect unless you're a very valuable contributor and/or lots of\nother people chime in to agree with you.\n\nIf I may ask; Why do you need to be able to work with a linux kernel\nrepository on windows?\n\n-- \nAndreas Ericsson                   andreas.ericsson@op5.se\nOP5 AB                             www.op5.se\nTel: +46 8-230225                  Fax: +46 8-230231\n\nConsidering the successes of the wars on alcohol, poverty, drugs and\nterror, I think we should give some serious thought to declaring war\non peace.\n"},{"id":"170067","messageId":"201106151614.06529.jnareb@gmail.com","threadId":"27627","inReplyTo":"4DF89F56.3060200@st.com","subject":"Re: Copying Git repository from Linux to Windows.","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2011-06-15T14:14:05Z","receivedAt":"2011-06-15T14:14:05Z","isPatch":false,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"On Wed, 15.06.2011, viresh kumar wrote:\n> On 06/15/2011 04:59 PM, Jakub Narebski wrote:\n\n> > Ah. This is caused by the fact that FAT doesn't store executable\n> > permission.\n> > \n> > So beside setting `core.symlinks` to false, you would have also set\n> > `core.filemode` to false (and perhaps also `core.ignorecase` to true).\n  \n> [...], but there is one more issue, as pointed out by\n> Andreas. There are few files in kernel with same file name but in different _cases_ (one in caps \n> and another in small.) and so i am getting issues with these now.\n> \n> And don't have any idea how to get rid of that?\n\ncore.ignorecase::\n        If true, this option enables various workarounds to enable\n        git to work better on filesystems that are not case sensitive,\n        like FAT. For example, if a directory listing finds\n        \"makefile\" when git expects \"Makefile\", git will assume\n        it is really the same file, and continue to remember it as\n        \"Makefile\".\n\n\tThe default is false\n\nBut that wouldn't unfortunately help when there are two files which\nfilename differs only in case.\n\nYou would have to do tricks with `git update-index` and its \n--assume-unchanged bit (though perhaps `core.ignorecase` would be\nenough) and `--cacheinfo <mode> <object> <path>` together with\n`git hash-object -w`... \n\nOr perhaps delete file which you have in working area, checkout\none file, add it, checkout other file, add it, use 'git commit'\nand not 'git commit -a'.\n\nBut that are only possible solutions; I have sane filesystem.\n\nCan't you work on NTFS, and use USB stick only for transport of\neither tarred repository, or bundle?\n\n> And why does kernel have such file names at all? \n\nThat I don't know.\n\n-- \nJakub Narebski\nPoland\n"},{"id":"170112","messageId":"4DF97998.7070604@st.com","threadId":"27627","inReplyTo":"4DF8A896.7080708@op5.se","subject":"Re: Copying Git repository from Linux to Windows.","fromName":"viresh kumar","fromEmail":"viresh.kumar@st.com","sentAt":"2011-06-16T03:33:44Z","receivedAt":"2011-06-16T03:33:44Z","isPatch":false,"sender":{"key":"viresh.kumar@st.com","avatar":null},"body":"On 06/15/2011 06:11 PM, Andreas Ericsson wrote:\n> If I may ask; Why do you need to be able to work with a linux kernel\n> repository on windows?\n\nI can't simply install Linux on my office laptop (company policies, support, etc) :(\n\nAnd i wanted just linux source on windows, i will not be creating any patches from\nwindows. Just needed code for reference.\n\n-- \nviresh\n"},{"id":"170115","messageId":"BANLkTinT8oH+aBnn+zqFYyFbcU+PNPVeVA@mail.gmail.com","threadId":"27627","inReplyTo":"4DF97998.7070604@st.com","subject":"Re: Copying Git repository from Linux to Windows.","fromName":"Philippe Vaucher","fromEmail":"philippe.vaucher@gmail.com","sentAt":"2011-06-16T08:17:21Z","receivedAt":"2011-06-16T08:17:21Z","isPatch":false,"sender":{"key":"philippe.vaucher@gmail.com","avatar":null},"body":"> I can't simply install Linux on my office laptop (company policies, support, etc) :(\n\nWhy not use something like VirtualBox?\n\nPhilippe\n"},{"id":"170116","messageId":"4DF9BD5C.5000901@st.com","threadId":"27627","inReplyTo":"BANLkTinT8oH+aBnn+zqFYyFbcU+PNPVeVA@mail.gmail.com","subject":"Re: Copying Git repository from Linux to Windows.","fromName":"viresh kumar","fromEmail":"viresh.kumar@st.com","sentAt":"2011-06-16T08:22:52Z","receivedAt":"2011-06-16T08:22:52Z","isPatch":false,"sender":{"key":"viresh.kumar@st.com","avatar":null},"body":"On 06/16/2011 01:47 PM, Philippe Vaucher wrote:\n>> I can't simply install Linux on my office laptop (company policies, support, etc) :(\n> \n> Why not use something like VirtualBox?\n> \n\nYa. I can, but for now i really don't have to. Just wanted code for\nreference on windows and i got it at last. Just commited all files still showed\nin git status.\n\n-- \nviresh\n"},{"id":"170119","messageId":"4DF9C3BA.8010106@viscovery.net","threadId":"27627","inReplyTo":"4DF97998.7070604@st.com","subject":"Re: Copying Git repository from Linux to Windows.","fromName":"Johannes Sixt","fromEmail":"j.sixt@viscovery.net","sentAt":"2011-06-16T08:50:02Z","receivedAt":"2011-06-16T08:50:02Z","isPatch":false,"sender":{"key":"j6t@kdbg.org","avatar":"https://avatars.githubusercontent.com/u/14810926?v=4"},"body":"Am 6/16/2011 5:33, schrieb viresh kumar:\n> And i wanted just linux source on windows, i will not be creating any patches from\n> windows. Just needed code for reference.\n\nIf you only want to peek into the files, you don't need the files checked\nout. Just have them in a bare repository and use, e.g.,\n\n  git show master:mm/vmalloc.c\n\nYou can also use a sparse checkout to omit the questionable files from the\ncheckout. See man git-read-tree.\n\n-- Hannes\n"},{"id":"170121","messageId":"4DF9C4F7.6020305@st.com","threadId":"27627","inReplyTo":"4DF9C3BA.8010106@viscovery.net","subject":"Re: Copying Git repository from Linux to Windows.","fromName":"viresh kumar","fromEmail":"viresh.kumar@st.com","sentAt":"2011-06-16T08:55:19Z","receivedAt":"2011-06-16T08:55:19Z","isPatch":false,"sender":{"key":"viresh.kumar@st.com","avatar":null},"body":"On 06/16/2011 02:20 PM, Johannes Sixt wrote:\n> Am 6/16/2011 5:33, schrieb viresh kumar:\n>> > And i wanted just linux source on windows, i will not be creating any patches from\n>> > windows. Just needed code for reference.\n> If you only want to peek into the files, you don't need the files checked\n> out. Just have them in a bare repository and use, e.g.,\n> \n>   git show master:mm/vmalloc.c\n> \n> You can also use a sparse checkout to omit the questionable files from the\n> checkout. See man git-read-tree.\n\nThanks. I am doing it this way only.\n\n-- \nviresh\n"},{"id":"170134","messageId":"201106161615.04870.jnareb@gmail.com","threadId":"27627","inReplyTo":"4DF97998.7070604@st.com","subject":"Re: Copying Git repository from Linux to Windows.","fromName":"Jakub Narebski","fromEmail":"jnareb@gmail.com","sentAt":"2011-06-16T14:15:04Z","receivedAt":"2011-06-16T14:15:04Z","isPatch":false,"sender":{"key":"jnareb@gmail.com","avatar":"https://avatars.githubusercontent.com/u/2706?v=4"},"body":"viresh kumar wrote:\n> On 06/15/2011 06:11 PM, Andreas Ericsson wrote:\n\n> > If I may ask; Why do you need to be able to work with a linux kernel\n> > repository on windows?\n> \n> I can't simply install Linux on my office laptop (company policies, support, etc) :(\n> \n> And i wanted just linux source on windows, i will not be creating any patches from\n> windows. Just needed code for reference.\n\nBrowsing code via gitweb (in a web browser) is not enough?\n\n-- \nJakub Narebski\nPoland\n"},{"id":"170172","messageId":"4DFACF8A.6000909@st.com","threadId":"27627","inReplyTo":"201106161615.04870.jnareb@gmail.com","subject":"Re: Copying Git repository from Linux to Windows.","fromName":"viresh kumar","fromEmail":"viresh.kumar@st.com","sentAt":"2011-06-17T03:52:42Z","receivedAt":"2011-06-17T03:52:42Z","isPatch":false,"sender":{"key":"viresh.kumar@st.com","avatar":null},"body":"On 06/16/2011 07:45 PM, Jakub Narebski wrote:\n> viresh kumar wrote:\n>> > On 06/15/2011 06:11 PM, Andreas Ericsson wrote:\n>>> > > If I may ask; Why do you need to be able to work with a linux kernel\n>>> > > repository on windows?\n>> > \n>> > I can't simply install Linux on my office laptop (company policies, support, etc) :(\n>> > \n>> > And i wanted just linux source on windows, i will not be creating any patches from\n>> > windows. Just needed code for reference.\n> Browsing code via gitweb (in a web browser) is not enough?\n\nIt can be. But my branches wouldn't have been there. They are local.\nAlso, i have fetched many other remote repositories, which i need.\n\n-- \nviresh\n"},{"id":"170319","messageId":"4DFFA60C.1070006@cisco.com","threadId":"27627","inReplyTo":"201106151614.06529.jnareb@gmail.com","subject":"Re: Copying Git repository from Linux to Windows.","fromName":"Phil Hord","fromEmail":"hordp@cisco.com","sentAt":"2011-06-20T19:57:00Z","receivedAt":"2011-06-20T19:57:00Z","isPatch":false,"sender":{"key":"phil.hord@gmail.com","avatar":"https://avatars.githubusercontent.com/u/123908?v=4"},"body":"On 06/15/2011 10:14 AM, Jakub Narebski wrote:\n>\n> core.ignorecase::\n>         If true, this option enables various workarounds to enable\n>         git to work better on filesystems that are not case sensitive,\n>         like FAT. For example, if a directory listing finds\n>         \"makefile\" when git expects \"Makefile\", git will assume\n>         it is really the same file, and continue to remember it as\n>         \"Makefile\".\n>\n> \tThe default is false\n>\n> But that wouldn't unfortunately help when there are two files which\n> filename differs only in case.\n>\n> You would have to do tricks with `git update-index` and its \n> --assume-unchanged bit (though perhaps `core.ignorecase` would be\n> enough) and `--cacheinfo <mode> <object> <path>` together with\n> `git hash-object -w`... \n>\n> Or perhaps delete file which you have in working area, checkout\n> one file, add it, checkout other file, add it, use 'git commit'\n> and not 'git commit -a'.\n>\n> But that are only possible solutions; I have sane filesystem.\n>\n> Can't you work on NTFS, and use USB stick only for transport of\n> either tarred repository, or bundle?\n\nFWIW - NTFS likely does not help here because even though NTFS supports\nunique-cased filenames, Windows and Win32-apps do not. \nhttp://support.microsoft.com/kb/100625\n\nFor example,\n\ncmd.exe:\n  C:\\> touch makefile\n  C:\\> copy makefile Makefile\n  The file cannot be copied onto itself.\n          0 file(s) copied.\n\ncygwin/bash:\n  $ touch makefile\n  $ cp makefile Makefile\n  cp: `makefile' and `Makefile' are the same file\n\nLinux (on NTFS volume):\n  mnt/NTFS:  touch makefile\n  mnt/NTFS:  cp makefile Makefile\n  mnt/NTFS:  ls *akefile\n  makefile  Makefile\n\n\nMac's \"HFS Plus\" filesystem supports unique-on-case, but it is not safe\nto enable it on a boot disk.\nhttp://support.apple.com/kb/TA21400?viewlocale=en_US\n\nPhil\n"}]}