{"thread":{"id":"11620","subject":"Git Cygwin - unable to create any repository - help!","startedAt":"2008-01-14T17:21:44Z","lastAt":"2008-01-17T22:32:53Z","messageCount":39,"participants":["Paul Umbers","Alex Riesen","Pascal Obry","Robin Rosenberg","Junio C Hamano","Linus Torvalds","Nicholas Wourms","Johannes Schindelin"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"65324","messageId":"a5eb9c330801140921m63b1b8a9pe67bf6f0d2e58dba@mail.gmail.com","threadId":"11620","inReplyTo":null,"subject":"Git Cygwin - unable to create any repository - help!","fromName":"Paul Umbers","fromEmail":"paul.umbers@gmail.com","sentAt":"2008-01-14T17:21:44Z","receivedAt":"2008-01-14T17:21:44Z","isPatch":false,"sender":{"key":"paul.umbers@gmail.com","avatar":null},"body":"Trying to create a repository under the cygwin install of git, windows\nXP Pro. I can create the initial repository OK using \"git init\" and\nadd files using \"git add .\", but when I come to commit I get the\nmessages:\n\nerror: invalid object d9b06fceac52f6c24357e6a7f85c601\n088381152\nfatal: git-write-tree: error building trees\n\ngit-fsck gives me:\n\nnotice: HEAD points to an unborn branch (master)\nnotice: No default references\nmissing blob d9b06fceac52f6c24357e6a7f85c601088381152\n\nThis is with a simple repository of one directory containing one plain\nascii text file with some text in it. I get similar messages, with one\nmissing blob for each file or directory in the project, on more\ncomplex projects. At home, I use git under Ubuntu linux and haven't\nhad any such problems.\n\nThe git/cygwin install followed the instruction for a cygwin binary\ninstallation from the wiki and no problems were reported. I've been\nunable to find online comments relating to this problem and am stuck.\n\nAny suggestions?\n\nPaul\n"},{"id":"65333","messageId":"20080114202932.GA25130@steel.home","threadId":"11620","inReplyTo":"a5eb9c330801140921m63b1b8a9pe67bf6f0d2e58dba@mail.gmail.com","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Alex Riesen","fromEmail":"raa.lkml@gmail.com","sentAt":"2008-01-14T20:29:32Z","receivedAt":"2008-01-14T20:29:32Z","isPatch":false,"sender":{"key":"raa.lkml@gmail.com","avatar":"https://avatars.githubusercontent.com/u/324101?v=4"},"body":"Paul Umbers, Mon, Jan 14, 2008 18:21:44 +0100:\n> Trying to create a repository under the cygwin install of git, windows\n> XP Pro. I can create the initial repository OK using \"git init\" and\n> add files using \"git add .\", but when I come to commit I get the\n> messages:\n> \n> error: invalid object d9b06fceac52f6c24357e6a7f85c601\n> 088381152\n> fatal: git-write-tree: error building trees\n\nIs it a \"text-mode\" mount where your repository is to reside?\n"},{"id":"65343","messageId":"a5eb9c330801141421g13c627e5x77afb357e2a78463@mail.gmail.com","threadId":"11620","inReplyTo":"20080114202932.GA25130@steel.home","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Paul Umbers","fromEmail":"paul.umbers@gmail.com","sentAt":"2008-01-14T22:21:28Z","receivedAt":"2008-01-14T22:21:28Z","isPatch":false,"sender":{"key":"paul.umbers@gmail.com","avatar":null},"body":"The \"mount\" command tells me everything I have is mounted in binmode.\nI have used Git on a default cygwin install (win XP pro) before and\nnot had this problem - that's why this is so frustrating. Not sure\nwhat changed this time round as I tend to use defaults for most\ninstallations.\n\nAre you saying I need to make sure the repository directory is mounted\nin text-mode (for Windows compatibility)? I just reinstalled cygwin,\nselecting text-mode as the default. I can create a git repository, but\n\"git add .\" returns:\n\nfatal: cannot use /cygdrive/c/test/.git/info/exclude as an exclude file\n\nPaul\n\n On Jan 14, 2008 1:29 PM, Alex Riesen <raa.lkml@gmail.com> wrote:\n> Paul Umbers, Mon, Jan 14, 2008 18:21:44 +0100:\n>\n> > Trying to create a repository under the cygwin install of git, windows\n> > XP Pro. I can create the initial repository OK using \"git init\" and\n> > add files using \"git add .\", but when I come to commit I get the\n> > messages:\n> >\n> > error: invalid object d9b06fceac52f6c24357e6a7f85c601\n> > 088381152\n> > fatal: git-write-tree: error building trees\n>\n> Is it a \"text-mode\" mount where your repository is to reside?\n>\n>\n\n\n\n-- \nComputer Science is no more about computers than astronomy is about telescopes.\n--- Edsger W. Dijkstra\n\nPaul Umbers MSc MBCS MIAP\npaul.umbers@gmail.com\n"},{"id":"65362","messageId":"20080115054807.GA3694@steel.home","threadId":"11620","inReplyTo":"a5eb9c330801141421g13c627e5x77afb357e2a78463@mail.gmail.com","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Alex Riesen","fromEmail":"raa.lkml@gmail.com","sentAt":"2008-01-15T05:48:07Z","receivedAt":"2008-01-15T05:48:07Z","isPatch":false,"sender":{"key":"raa.lkml@gmail.com","avatar":"https://avatars.githubusercontent.com/u/324101?v=4"},"body":"Paul Umbers, Mon, Jan 14, 2008 23:21:28 +0100:\n> The \"mount\" command tells me everything I have is mounted in binmode.\n\nNow that's unusual, unless you had \"Text Mode\" selected in the installer\n\n> Are you saying I need to make sure the repository directory is mounted\n> in text-mode (for Windows compatibility)? I just reinstalled cygwin,\n> selecting text-mode as the default.\n\nNo, text-mode is definitely wrong for almost anything. It just\ncorrupts data. Try activating binary mode.\n"},{"id":"65386","messageId":"a5eb9c330801150721t5da85295heacae2c5a5aad47e@mail.gmail.com","threadId":"11620","inReplyTo":"20080115054807.GA3694@steel.home","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Paul Umbers","fromEmail":"paul.umbers@gmail.com","sentAt":"2008-01-15T15:21:15Z","receivedAt":"2008-01-15T15:21:15Z","isPatch":false,"sender":{"key":"paul.umbers@gmail.com","avatar":null},"body":"I've just completely uninstalled (ie: deleted) and re-installed\ncygwin, ensuring that bin mode was selected for the install (I'm sure\nit was before, that's the default). \"mount\" confirms that everything\nis mounted in binmode.\n\nSadly, I still can't commit to a git repository - same problem: every\nfile & directory immediately shows as a \"missing blob\" after \"git add\n.\"\n\nI'll try the same install on my home system (Win XP Home) and see if I\nget the same problem.\n\nPaul\n"},{"id":"65393","messageId":"478CE892.9070808@obry.net","threadId":"11620","inReplyTo":"a5eb9c330801141421g13c627e5x77afb357e2a78463@mail.gmail.com","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Pascal Obry","fromEmail":"pascal@obry.net","sentAt":"2008-01-15T17:08:34Z","receivedAt":"2008-01-15T17:08:34Z","isPatch":false,"sender":{"key":"pascal@obry.net","avatar":"https://avatars.githubusercontent.com/u/467069?v=4"},"body":"Paul Umbers a écrit :\n> The \"mount\" command tells me everything I have is mounted in binmode.\n> I have used Git on a default cygwin install (win XP pro) before and\n> not had this problem - that's why this is so frustrating. Not sure\n> what changed this time round as I tend to use defaults for most\n> installations.\n> \n> Are you saying I need to make sure the repository directory is mounted\n> in text-mode (for Windows compatibility)? I just reinstalled cygwin,\n> selecting text-mode as the default. I can create a git repository, but\n> \"git add .\" returns:\n\nAvoid text-mode on Windows with Cygwin. I can't help with your problem \nbut I can tell you that Git is working fine here!\n\nWhat about permissions for /cygdrive/c/test ?\n\nPascal.\n\n-- \n\n--|------------------------------------------------------\n--| Pascal Obry                           Team-Ada Member\n--| 45, rue Gabriel Peri - 78114 Magny Les Hameaux FRANCE\n--|------------------------------------------------------\n--|              http://www.obry.net\n--| \"The best way to travel is by means of imagination\"\n--|\n--| gpg --keyserver wwwkeys.pgp.net --recv-key C1082595\n"},{"id":"65405","messageId":"20080115200437.GB3213@steel.home","threadId":"11620","inReplyTo":"a5eb9c330801150721t5da85295heacae2c5a5aad47e@mail.gmail.com","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Alex Riesen","fromEmail":"raa.lkml@gmail.com","sentAt":"2008-01-15T20:04:37Z","receivedAt":"2008-01-15T20:04:37Z","isPatch":false,"sender":{"key":"raa.lkml@gmail.com","avatar":"https://avatars.githubusercontent.com/u/324101?v=4"},"body":"Paul Umbers, Tue, Jan 15, 2008 16:21:15 +0100:\n> I've just completely uninstalled (ie: deleted) and re-installed\n> cygwin, ensuring that bin mode was selected for the install (I'm sure\n> it was before, that's the default). \"mount\" confirms that everything\n> is mounted in binmode.\n\nOk, so it is a bit more complicated...\n\nPaul Umbers, Mon, Jan 14, 2008 18:21:44 +0100:\n> Trying to create a repository under the cygwin install of git, windows\n> XP Pro. I can create the initial repository OK using \"git init\" and\n> add files using \"git add .\", but when I come to commit I get the\n> messages:\n> \n> error: invalid object d9b06fceac52f6c24357e6a7f85c601088381152\n> fatal: git-write-tree: error building trees\n\nDoes the object exists at all? Try\n\n    ls -l .git/d9/b06fceac52f6c24357e6a7f85c601088381152\n\nIs it possible to get a hold of this repo (just the .git directly\nafter \"git add .\")? It would be interesting to see the nature of the\ncorruption.\n"},{"id":"65407","messageId":"a5eb9c330801151212y30cf4f63r9c294ba33da2b8f@mail.gmail.com","threadId":"11620","inReplyTo":"20080115200437.GB3213@steel.home","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Paul Umbers","fromEmail":"paul.umbers@gmail.com","sentAt":"2008-01-15T20:12:45Z","receivedAt":"2008-01-15T20:12:45Z","isPatch":false,"sender":{"key":"paul.umbers@gmail.com","avatar":null},"body":"git ls (see below) returns nothing - it looks like the object doesn't\nexist at all. I've attached a .zip of the entire test directory (one\ntext file plus .git). This is after \"git init\" followed by \"git add .\"\n\nWhat do you think?\n\n>\n> Does the object exists at all? Try\n>\n>     ls -l .git/d9/b06fceac52f6c24357e6a7f85c601088381152\n>\n> Is it possible to get a hold of this repo (just the .git directly\n> after \"git add .\")? It would be interesting to see the nature of the\n> corruption.\n>\n>\n\n\n\n-- \nComputer Science is no more about computers than astronomy is about telescopes.\n--- Edsger W. Dijkstra\n\nPaul Umbers MSc MBCS MIAP\npaul.umbers@gmail.com\n"},{"id":"65421","messageId":"20080115212022.GC3213@steel.home","threadId":"11620","inReplyTo":"a5eb9c330801151212y30cf4f63r9c294ba33da2b8f@mail.gmail.com","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Alex Riesen","fromEmail":"raa.lkml@gmail.com","sentAt":"2008-01-15T21:20:22Z","receivedAt":"2008-01-15T21:20:22Z","isPatch":false,"sender":{"key":"raa.lkml@gmail.com","avatar":"https://avatars.githubusercontent.com/u/324101?v=4"},"body":"Paul Umbers, Tue, Jan 15, 2008 21:12:45 +0100:\n> >\n> > Does the object exists at all? Try\n> >\n> >     ls -l .git/d9/b06fceac52f6c24357e6a7f85c601088381152\n> >\n> > Is it possible to get a hold of this repo (just the .git directly\n> > after \"git add .\")? It would be interesting to see the nature of the\n> > corruption.\n> >\n> git ls (see below) returns nothing - it looks like the object doesn't\n> exist at all. I've attached a .zip of the entire test directory (one\n\nzip is a bit lying: it does not keep the attributes of the files the\nway cygwin programs see them. For instance, it not known whether the\nhooks (.git/hooks) where executable at the time.\n\n> text file plus .git). This is after \"git init\" followed by \"git add .\"\n> \n> What do you think?\n\nI think it has failed already at \"git add\". From looking at the code\nit is hard for the current git-add (builtin-add.c) to fail silently.\n\nHmm... What \"git version\" returns for you? (the .git/config contains\nfilemode=true, which cygwin breaks every time).\n\nOf course, it would be interesting to know if the current git works\nfor you. Or the MinGW port:\n\n    http://code.google.com/p/msysgit/downloads/list\n\nIt used to conflict with cygwin, though.\n\nIf the current git fails, I'd suggest to instrument write_sha1_file in\nsha1_file.c and see if it really manages to create temporary file and\nrename it to sha1 file (that d9/b06fceac52f6c24357e6a7f85c601088381152).\nI suspect either rename or link failing silently (IOW, it fails to\ncreate the new name under objects/d9/ but returns 0(no error) anyway).\n"},{"id":"65425","messageId":"a5eb9c330801151357w62674db6td23dd2c501e62728@mail.gmail.com","threadId":"11620","inReplyTo":"20080115212022.GC3213@steel.home","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Paul Umbers","fromEmail":"paul.umbers@gmail.com","sentAt":"2008-01-15T21:57:35Z","receivedAt":"2008-01-15T21:57:35Z","isPatch":false,"sender":{"key":"paul.umbers@gmail.com","avatar":null},"body":"Try this ... test.tar (from within cygwin).\n\nOn Jan 15, 2008 2:20 PM, Alex Riesen <raa.lkml@gmail.com> wrote:\n> Paul Umbers, Tue, Jan 15, 2008 21:12:45 +0100:\n> > >\n> > > Does the object exists at all? Try\n> > >\n> > >     ls -l .git/d9/b06fceac52f6c24357e6a7f85c601088381152\n> > >\n> > > Is it possible to get a hold of this repo (just the .git directly\n> > > after \"git add .\")? It would be interesting to see the nature of the\n> > > corruption.\n> > >\n> > git ls (see below) returns nothing - it looks like the object doesn't\n> > exist at all. I've attached a .zip of the entire test directory (one\n>\n> zip is a bit lying: it does not keep the attributes of the files the\n> way cygwin programs see them. For instance, it not known whether the\n> hooks (.git/hooks) where executable at the time.\n>\n> > text file plus .git). This is after \"git init\" followed by \"git add .\"\n> >\n> > What do you think?\n>\n> I think it has failed already at \"git add\". From looking at the code\n> it is hard for the current git-add (builtin-add.c) to fail silently.\n>\n> Hmm... What \"git version\" returns for you? (the .git/config contains\n> filemode=true, which cygwin breaks every time).\n>\n> Of course, it would be interesting to know if the current git works\n> for you. Or the MinGW port:\n>\n>     http://code.google.com/p/msysgit/downloads/list\n>\n> It used to conflict with cygwin, though.\n>\n> If the current git fails, I'd suggest to instrument write_sha1_file in\n> sha1_file.c and see if it really manages to create temporary file and\n> rename it to sha1 file (that d9/b06fceac52f6c24357e6a7f85c601088381152).\n> I suspect either rename or link failing silently (IOW, it fails to\n> create the new name under objects/d9/ but returns 0(no error) anyway).\n>\n>\n\n\n\n-- \nComputer Science is no more about computers than astronomy is about telescopes.\n--- Edsger W. Dijkstra\n\nPaul Umbers MSc MBCS MIAP\npaul.umbers@gmail.com\n"},{"id":"65426","messageId":"a5eb9c330801151359q5a474a83le36ae9076ad4e5c1@mail.gmail.com","threadId":"11620","inReplyTo":"20080115212022.GC3213@steel.home","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Paul Umbers","fromEmail":"paul.umbers@gmail.com","sentAt":"2008-01-15T21:59:52Z","receivedAt":"2008-01-15T21:59:52Z","isPatch":false,"sender":{"key":"paul.umbers@gmail.com","avatar":null},"body":"Git version is 1.5.3.8.\n\nOn Jan 15, 2008 2:20 PM, Alex Riesen <raa.lkml@gmail.com> wrote:\n> Paul Umbers, Tue, Jan 15, 2008 21:12:45 +0100:\n> > >\n> > > Does the object exists at all? Try\n> > >\n> > >     ls -l .git/d9/b06fceac52f6c24357e6a7f85c601088381152\n> > >\n> > > Is it possible to get a hold of this repo (just the .git directly\n> > > after \"git add .\")? It would be interesting to see the nature of the\n> > > corruption.\n> > >\n> > git ls (see below) returns nothing - it looks like the object doesn't\n> > exist at all. I've attached a .zip of the entire test directory (one\n>\n> zip is a bit lying: it does not keep the attributes of the files the\n> way cygwin programs see them. For instance, it not known whether the\n> hooks (.git/hooks) where executable at the time.\n>\n> > text file plus .git). This is after \"git init\" followed by \"git add .\"\n> >\n> > What do you think?\n>\n> I think it has failed already at \"git add\". From looking at the code\n> it is hard for the current git-add (builtin-add.c) to fail silently.\n>\n> Hmm... What \"git version\" returns for you? (the .git/config contains\n> filemode=true, which cygwin breaks every time).\n>\n> Of course, it would be interesting to know if the current git works\n> for you. Or the MinGW port:\n>\n>     http://code.google.com/p/msysgit/downloads/list\n>\n> It used to conflict with cygwin, though.\n>\n> If the current git fails, I'd suggest to instrument write_sha1_file in\n> sha1_file.c and see if it really manages to create temporary file and\n> rename it to sha1 file (that d9/b06fceac52f6c24357e6a7f85c601088381152).\n> I suspect either rename or link failing silently (IOW, it fails to\n> create the new name under objects/d9/ but returns 0(no error) anyway).\n>\n>\n\n\n\n-- \nComputer Science is no more about computers than astronomy is about telescopes.\n--- Edsger W. Dijkstra\n\nPaul Umbers MSc MBCS MIAP\npaul.umbers@gmail.com\n"},{"id":"65428","messageId":"20080115225105.GA32287@steel.home","threadId":"11620","inReplyTo":"a5eb9c330801151357w62674db6td23dd2c501e62728@mail.gmail.com","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Alex Riesen","fromEmail":"raa.lkml@gmail.com","sentAt":"2008-01-15T22:51:05Z","receivedAt":"2008-01-15T22:51:05Z","isPatch":false,"sender":{"key":"raa.lkml@gmail.com","avatar":"https://avatars.githubusercontent.com/u/324101?v=4"},"body":"Paul Umbers, Tue, Jan 15, 2008 22:57:35 +0100:\n> Try this ... test.tar (from within cygwin).\n> \n\nOk, nothing suspicios here.\n"},{"id":"65429","messageId":"20080115225536.GB32287@steel.home","threadId":"11620","inReplyTo":"a5eb9c330801151359q5a474a83le36ae9076ad4e5c1@mail.gmail.com","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Alex Riesen","fromEmail":"raa.lkml@gmail.com","sentAt":"2008-01-15T22:55:36Z","receivedAt":"2008-01-15T22:55:36Z","isPatch":false,"sender":{"key":"raa.lkml@gmail.com","avatar":"https://avatars.githubusercontent.com/u/324101?v=4"},"body":"Paul Umbers, Tue, Jan 15, 2008 22:59:52 +0100:\n> Git version is 1.5.3.8.\n\nThat's ok too. The git-add is as verbose regarding errors as today.\n\nNext would be to try to recompile git and instrument that file:\n\n> On Jan 15, 2008 2:20 PM, Alex Riesen <raa.lkml@gmail.com> wrote:\n> > Hmm... What \"git version\" returns for you? (the .git/config contains\n> > filemode=true, which cygwin breaks every time).\n> >\n> > Of course, it would be interesting to know if the current git works\n> > for you. Or the MinGW port:\n> >\n> >     http://code.google.com/p/msysgit/downloads/list\n> >\n> > It used to conflict with cygwin, though.\n\nOr try the MinGW port\n\n> > If the current git fails, I'd suggest to instrument write_sha1_file in\n> > sha1_file.c and see if it really manages to create temporary file and\n> > rename it to sha1 file (that d9/b06fceac52f6c24357e6a7f85c601088381152).\n> > I suspect either rename or link failing silently (IOW, it fails to\n> > create the new name under objects/d9/ but returns 0(no error) anyway).\n\nThat sha1_file.c above\n"},{"id":"65430","messageId":"200801160002.51048.robin.rosenberg.lists@dewire.com","threadId":"11620","inReplyTo":"a5eb9c330801151212y30cf4f63r9c294ba33da2b8f@mail.gmail.com","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Robin Rosenberg","fromEmail":"robin.rosenberg.lists@dewire.com","sentAt":"2008-01-15T23:02:49Z","receivedAt":"2008-01-15T23:02:49Z","isPatch":false,"sender":{"key":"robin.rosenberg@dewire.com","avatar":"https://avatars.githubusercontent.com/u/46357?v=4"},"body":"tisdagen den 15 januari 2008 skrev Paul Umbers:\n> git ls (see below) returns nothing - it looks like the object doesn't\n> exist at all. I've attached a .zip of the entire test directory (one\n> text file plus .git). This is after \"git init\" followed by \"git add .\"\n> \n> What do you think?\n\nGit comes with test suite. Try it using make test or\n\nGIT_TEST_OPTS=\"--debug --verbose\" make test\n\nThe extra options are there since we expect it to fail.\n\n-- robin\n"},{"id":"65504","messageId":"20080116071832.GA2896@steel.home","threadId":"11620","inReplyTo":"200801160002.51048.robin.rosenberg.lists@dewire.com","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Alex Riesen","fromEmail":"raa.lkml@gmail.com","sentAt":"2008-01-16T07:18:32Z","receivedAt":"2008-01-16T07:18:32Z","isPatch":false,"sender":{"key":"raa.lkml@gmail.com","avatar":"https://avatars.githubusercontent.com/u/324101?v=4"},"body":"Robin Rosenberg, Wed, Jan 16, 2008 00:02:49 +0100:\n> tisdagen den 15 januari 2008 skrev Paul Umbers:\n> > git ls (see below) returns nothing - it looks like the object doesn't\n> > exist at all. I've attached a .zip of the entire test directory (one\n> > text file plus .git). This is after \"git init\" followed by \"git add .\"\n> > \n> > What do you think?\n> \n> Git comes with test suite. Try it using make test or\n\nHe has just the precompiled packages from cygwin\n\n> GIT_TEST_OPTS=\"--debug --verbose\" make test\n> \n> The extra options are there since we expect it to fail.\n> \n\nBut when compiled, it would be useflul indeed to see how the tests run\n"},{"id":"65549","messageId":"a5eb9c330801160742j645ee50p72ee0a93adf8f94f@mail.gmail.com","threadId":"11620","inReplyTo":"20080116071832.GA2896@steel.home","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Paul Umbers","fromEmail":"paul.umbers@gmail.com","sentAt":"2008-01-16T15:42:46Z","receivedAt":"2008-01-16T15:42:46Z","isPatch":false,"sender":{"key":"paul.umbers@gmail.com","avatar":null},"body":"OK, I think this worked (I'm a Java man, not C/C++). I downloaded the\nlatest 1.5.3 source from the git repository and ran \"make\" with\nGIT_TEST_OPTS=\"--verbose --debug\". Here's the output:\n\npaulumbers@Devteam29 ~/workspace/git/git-1.5.3/t\n$ make\n*** t0000-basic.sh ***\n*   ok 1: .git/objects should be empty after git init in an empty repo.\n*   ok 2: .git/objects should have 3 subdirectories.\n*   ok 3: git update-index without --add should fail adding.\n*   ok 4: git update-index with --add should succeed.\n* FAIL 5: writing tree out with git write-tree\n        tree=$(git write-tree)\n* FAIL 6: validate object ID of a known tree.\n        test \"$tree\" = 7bb943559a305bdd6bdee2cef6e5df2413c3d30a\n*   ok 7: git update-index without --remove should fail removing.\n*   ok 8: git update-index with --remove should be able to remove.\n*   ok 9: git write-tree should be able to write an empty tree.\n*   ok 10: validate object ID of a known tree.\n*   ok 11: adding various types of objects with git update-index --add.\n*   ok 12: showing stage with git ls-files --stage\n*   ok 13: validate git ls-files output for a known tree.\n* FAIL 14: writing tree out with git write-tree.\n        tree=$(git write-tree)\n* FAIL 15: validate object ID for a known tree.\n        test \"$tree\" = 087704a96baf1c2d1c869a8b084481e121c88b5b\n* FAIL 16: showing tree with git ls-tree\n        git ls-tree $tree >current\n* FAIL 17: git ls-tree output for a known tree.\n        diff current expected\n* FAIL 18: showing tree with git ls-tree -r\n        git ls-tree -r $tree >current\n* FAIL 19: git ls-tree -r output for a known tree.\n        diff current expected\n* FAIL 20: showing tree with git ls-tree -r -t\n        git ls-tree -r -t $tree >current\n* FAIL 21: git ls-tree -r output for a known tree.\n        diff current expected\n* FAIL 22: writing partial tree out with git write-tree --prefix.\n        ptree=$(git write-tree --prefix=path3)\n* FAIL 23: validate object ID for a known tree.\n        test \"$ptree\" = 21ae8269cacbe57ae09138dcc3a2887f904d02b3\n* FAIL 24: writing partial tree out with git write-tree --prefix.\n        ptree=$(git write-tree --prefix=path3/subp3)\n* FAIL 25: validate object ID for a known tree.\n        test \"$ptree\" = 3c5e5399f3a333eddecce7a9b9465b63f65f51e2\n*   ok 26: put invalid objects into the index.\n*   ok 27: writing this tree without --missing-ok.\n*   ok 28: writing this tree with --missing-ok.\n* FAIL 29: git read-tree followed by write-tree should be idempotent.\n        git read-tree $tree &&\n             test -f .git/index &&\n             newtree=$(git write-tree) &&\n             test \"$newtree\" = \"$tree\"\n* FAIL 30: validate git diff-files output for a know cache/work tree state.\n        git diff-files >current && diff >/dev/null -b current expected\n*   ok 31: git update-index --refresh should succeed.\n*   ok 32: no diff after checkout and git update-index --refresh.\n* FAIL 33: git commit-tree records the correct tree in a commit.\n        commit0=$(echo NO | git commit-tree $P) &&\n             tree=$(git show --pretty=raw $commit0 |\n                 sed -n -e \"s/^tree //p\" -e \"/^author /q\") &&\n             test \"z$tree\" = \"z$P\"\n* FAIL 34: git commit-tree records the correct parent in a commit.\n        commit1=$(echo NO | git commit-tree $P -p $commit0) &&\n             parent=$(git show --pretty=raw $commit1 |\n                 sed -n -e \"s/^parent //p\" -e \"/^author /q\") &&\n             test \"z$commit0\" = \"z$parent\"\n* FAIL 35: git commit-tree omits duplicated parent in a commit.\n        commit2=$(echo NO | git commit-tree $P -p $commit0 -p $commit0) &&\n             parent=$(git show --pretty=raw $commit2 |\n                 sed -n -e \"s/^parent //p\" -e \"/^author /q\" |\n                 sort -u) &&\n             test \"z$commit0\" = \"z$parent\" &&\n             numparent=$(git show --pretty=raw $commit2 |\n                 sed -n -e \"s/^parent //p\" -e \"/^author /q\" |\n                 wc -l) &&\n             test $numparent = 1\n*   ok 36: update-index D/F conflict\n* FAIL 37: absolute path works as expected\n\n                mkdir first &&\n                ln -s ../.git first/.git &&\n                mkdir second &&\n                ln -s ../first second/other &&\n                mkdir third &&\n                dir=\"$(cd .git; pwd -P)\" &&\n                dir2=third/../second/other/.git &&\n                test \"$dir\" = \"$(test-absolute-path $dir2)\" &&\n                file=\"$dir\"/index &&\n                test \"$file\" = \"$(test-absolute-path $dir2/index)\" &&\n                ln -s ../first/file .git/syml &&\n                sym=\"$(cd first; pwd -P)\"/file &&\n                test \"$sym\" = \"$(test-absolute-path $dir2/syml)\"\n\n* failed 20 among 37 test(s)\nmake: *** [t0000-basic.sh] Error 1\n\npaulumbers@Devteam29 ~/workspace/git/git-1.5.3/t\n$ make -v -d\nGNU Make 3.81\nCopyright (C) 2006  Free Software Foundation, Inc.\nThis is free software; see the source for copying conditions.\nThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A\nPARTICULAR PURPOSE.\n\nThis program built for i686-pc-cygwin\n\npaulumbers@Devteam29 ~/workspace/git/git-1.5.3/t\n$ export GIT_TEST_OPTS=\"--verbose --debug\"\n\npaulumbers@Devteam29 ~/workspace/git/git-1.5.3/t\n$ make\n*** t0000-basic.sh ***\n* expecting success: cmp -s /dev/null should-be-empty\n*   ok 1: .git/objects should be empty after git init in an empty repo.\n\n* expecting success: test $(wc -l < full-of-directories) = 3\n*   ok 2: .git/objects should have 3 subdirectories.\n\n* expecting failure: git update-index should-be-empty\nerror: should-be-empty: cannot add to the index - missing --add option?\nfatal: Unable to process path should-be-empty\n*   ok 3: git update-index without --add should fail adding.\n\n* expecting success: git update-index --add should-be-empty\n*   ok 4: git update-index with --add should succeed.\n\n* expecting success: tree=$(git write-tree)\nerror: invalid object e69de29bb2d1d6434b8b29ae775ad8c2e48c5391\nfatal: git-write-tree: error building trees\n* FAIL 5: writing tree out with git write-tree\n        tree=$(git write-tree)\n\n* expecting success: test \"$tree\" = 7bb943559a305bdd6bdee2cef6e5df2413c3d30a\n* FAIL 6: validate object ID of a known tree.\n        test \"$tree\" = 7bb943559a305bdd6bdee2cef6e5df2413c3d30a\n\n* expecting failure: git update-index should-be-empty\nerror: should-be-empty: does not exist and --remove not passed\nfatal: Unable to process path should-be-empty\n*   ok 7: git update-index without --remove should fail removing.\n\n* expecting success: git update-index --remove should-be-empty\n*   ok 8: git update-index with --remove should be able to remove.\n\n* expecting success: tree=$(git write-tree)\n*   ok 9: git write-tree should be able to write an empty tree.\n\n* expecting success: test \"$tree\" = 4b825dc642cb6eb9a060e54bf8d69288fbee4904\n*   ok 10: validate object ID of a known tree.\n\n* expecting success: find path* ! -type d -print | xargs git update-index --add\n*   ok 11: adding various types of objects with git update-index --add.\n\n* expecting success: git ls-files --stage >current\n*   ok 12: showing stage with git ls-files --stage\n\n* expecting success: diff current expected\n*   ok 13: validate git ls-files output for a known tree.\n\n* expecting success: tree=$(git write-tree)\nerror: invalid object 3feff949ed00a62d9f7af97c15cd8a30595e7ac7\nfatal: git-write-tree: error building trees\n* FAIL 14: writing tree out with git write-tree.\n        tree=$(git write-tree)\n\n* expecting success: test \"$tree\" = 087704a96baf1c2d1c869a8b084481e121c88b5b\n* FAIL 15: validate object ID for a known tree.\n        test \"$tree\" = 087704a96baf1c2d1c869a8b084481e121c88b5b\n\n* expecting success: git ls-tree $tree >current\nusage: git-ls-tree [-d] [-r] [-t] [-l] [-z] [--name-only]\n[--name-status] [--full-name] [--abbrev[=<n>]] <tree-ish> [path...]\n* FAIL 16: showing tree with git ls-tree\n        git ls-tree $tree >current\n\n* expecting success: diff current expected\n0a1,4\n> 100644 blob f87290f8eb2cbbea7857214459a0739927eab154  path0\n> 120000 blob 15a98433ae33114b085f3eb3bb03b832b3180a01  path0sym\n> 040000 tree 58a09c23e2ca152193f2786e06986b7b6712bdbe  path2\n> 040000 tree 21ae8269cacbe57ae09138dcc3a2887f904d02b3  path3\n* FAIL 17: git ls-tree output for a known tree.\n        diff current expected\n\n* expecting success: git ls-tree -r $tree >current\nusage: git-ls-tree [-d] [-r] [-t] [-l] [-z] [--name-only]\n[--name-status] [--full-name] [--abbrev[=<n>]] <tree-ish> [path...]\n* FAIL 18: showing tree with git ls-tree -r\n        git ls-tree -r $tree >current\n\n* expecting success: diff current expected\n0a1,8\n> 100644 blob f87290f8eb2cbbea7857214459a0739927eab154  path0\n> 120000 blob 15a98433ae33114b085f3eb3bb03b832b3180a01  path0sym\n> 100644 blob 3feff949ed00a62d9f7af97c15cd8a30595e7ac7  path2/file2\n> 120000 blob d8ce161addc5173867a3c3c730924388daedbc38  path2/file2sym\n> 100644 blob 0aa34cae68d0878578ad119c86ca2b5ed5b28376  path3/file3\n> 120000 blob 8599103969b43aff7e430efea79ca4636466794f  path3/file3sym\n> 100644 blob 00fb5908cb97c2564a9783c0c64087333b3b464f  path3/subp3/file3\n> 120000 blob 6649a1ebe9e9f1c553b66f5a6e74136a07ccc57c  path3/subp3/file3sym\n* FAIL 19: git ls-tree -r output for a known tree.\n        diff current expected\n\n* expecting success: git ls-tree -r -t $tree >current\nusage: git-ls-tree [-d] [-r] [-t] [-l] [-z] [--name-only]\n[--name-status] [--full-name] [--abbrev[=<n>]] <tree-ish> [path...]\n* FAIL 20: showing tree with git ls-tree -r -t\n        git ls-tree -r -t $tree >current\n\n* expecting success: diff current expected\n0a1,11\n> 100644 blob f87290f8eb2cbbea7857214459a0739927eab154  path0\n> 120000 blob 15a98433ae33114b085f3eb3bb03b832b3180a01  path0sym\n> 040000 tree 58a09c23e2ca152193f2786e06986b7b6712bdbe  path2\n> 100644 blob 3feff949ed00a62d9f7af97c15cd8a30595e7ac7  path2/file2\n> 120000 blob d8ce161addc5173867a3c3c730924388daedbc38  path2/file2sym\n> 040000 tree 21ae8269cacbe57ae09138dcc3a2887f904d02b3  path3\n> 100644 blob 0aa34cae68d0878578ad119c86ca2b5ed5b28376  path3/file3\n> 120000 blob 8599103969b43aff7e430efea79ca4636466794f  path3/file3sym\n> 040000 tree 3c5e5399f3a333eddecce7a9b9465b63f65f51e2  path3/subp3\n> 100644 blob 00fb5908cb97c2564a9783c0c64087333b3b464f  path3/subp3/file3\n> 120000 blob 6649a1ebe9e9f1c553b66f5a6e74136a07ccc57c  path3/subp3/file3sym\n* FAIL 21: git ls-tree -r output for a known tree.\n        diff current expected\n\n* expecting success: ptree=$(git write-tree --prefix=path3)\nerror: invalid object 3feff949ed00a62d9f7af97c15cd8a30595e7ac7\nfatal: git-write-tree: error building trees\n* FAIL 22: writing partial tree out with git write-tree --prefix.\n        ptree=$(git write-tree --prefix=path3)\n\n* expecting success: test \"$ptree\" = 21ae8269cacbe57ae09138dcc3a2887f904d02b3\n* FAIL 23: validate object ID for a known tree.\n        test \"$ptree\" = 21ae8269cacbe57ae09138dcc3a2887f904d02b3\n\n* expecting success: ptree=$(git write-tree --prefix=path3/subp3)\nerror: invalid object 3feff949ed00a62d9f7af97c15cd8a30595e7ac7\nfatal: git-write-tree: error building trees\n* FAIL 24: writing partial tree out with git write-tree --prefix.\n        ptree=$(git write-tree --prefix=path3/subp3)\n\n* expecting success: test \"$ptree\" = 3c5e5399f3a333eddecce7a9b9465b63f65f51e2\n* FAIL 25: validate object ID for a known tree.\n        test \"$ptree\" = 3c5e5399f3a333eddecce7a9b9465b63f65f51e2\n\n* expecting success: git update-index --index-info < badobjects\n*   ok 26: put invalid objects into the index.\n\n* expecting failure: git write-tree\nerror: invalid object 1000000000000000000000000000000000000000\nfatal: git-write-tree: error building trees\n*   ok 27: writing this tree without --missing-ok.\n\n* expecting success: git write-tree --missing-ok\n851a367613bb6e1f0b2b518323eafed530b5b4c4\n*   ok 28: writing this tree with --missing-ok.\n\n* expecting success: git read-tree $tree &&\n     test -f .git/index &&\n     newtree=$(git write-tree) &&\n     test \"$newtree\" = \"$tree\"\n* FAIL 29: git read-tree followed by write-tree should be idempotent.\n        git read-tree $tree &&\n             test -f .git/index &&\n             newtree=$(git write-tree) &&\n             test \"$newtree\" = \"$tree\"\n\n* expecting success: git diff-files >current && diff >/dev/null -b\ncurrent expected\n* FAIL 30: validate git diff-files output for a know cache/work tree state.\n        git diff-files >current && diff >/dev/null -b current expected\n\n* expecting success: git update-index --refresh\n*   ok 31: git update-index --refresh should succeed.\n\n* expecting success: git diff-files >current && cmp -s current /dev/null\n*   ok 32: no diff after checkout and git update-index --refresh.\n\n* expecting success: commit0=$(echo NO | git commit-tree $P) &&\n     tree=$(git show --pretty=raw $commit0 |\n         sed -n -e \"s/^tree //p\" -e \"/^author /q\") &&\n     test \"z$tree\" = \"z$P\"\nerror: unable to find 087704a96baf1c2d1c869a8b084481e121c88b5b\nfatal: 087704a96baf1c2d1c869a8b084481e121c88b5b is not a valid object\n* FAIL 33: git commit-tree records the correct tree in a commit.\n        commit0=$(echo NO | git commit-tree $P) &&\n             tree=$(git show --pretty=raw $commit0 |\n                 sed -n -e \"s/^tree //p\" -e \"/^author /q\") &&\n             test \"z$tree\" = \"z$P\"\n\n* expecting success: commit1=$(echo NO | git commit-tree $P -p $commit0) &&\n     parent=$(git show --pretty=raw $commit1 |\n         sed -n -e \"s/^parent //p\" -e \"/^author /q\") &&\n     test \"z$commit0\" = \"z$parent\"\nerror: unable to find 087704a96baf1c2d1c869a8b084481e121c88b5b\nfatal: 087704a96baf1c2d1c869a8b084481e121c88b5b is not a valid object\n* FAIL 34: git commit-tree records the correct parent in a commit.\n        commit1=$(echo NO | git commit-tree $P -p $commit0) &&\n             parent=$(git show --pretty=raw $commit1 |\n                 sed -n -e \"s/^parent //p\" -e \"/^author /q\") &&\n             test \"z$commit0\" = \"z$parent\"\n\n* expecting success: commit2=$(echo NO | git commit-tree $P -p\n$commit0 -p $commit0) &&\n     parent=$(git show --pretty=raw $commit2 |\n         sed -n -e \"s/^parent //p\" -e \"/^author /q\" |\n         sort -u) &&\n     test \"z$commit0\" = \"z$parent\" &&\n     numparent=$(git show --pretty=raw $commit2 |\n         sed -n -e \"s/^parent //p\" -e \"/^author /q\" |\n         wc -l) &&\n     test $numparent = 1\nerror: unable to find 087704a96baf1c2d1c869a8b084481e121c88b5b\nfatal: 087704a96baf1c2d1c869a8b084481e121c88b5b is not a valid object\n* FAIL 35: git commit-tree omits duplicated parent in a commit.\n        commit2=$(echo NO | git commit-tree $P -p $commit0 -p $commit0) &&\n             parent=$(git show --pretty=raw $commit2 |\n                 sed -n -e \"s/^parent //p\" -e \"/^author /q\" |\n                 sort -u) &&\n             test \"z$commit0\" = \"z$parent\" &&\n             numparent=$(git show --pretty=raw $commit2 |\n                 sed -n -e \"s/^parent //p\" -e \"/^author /q\" |\n                 wc -l) &&\n             test $numparent = 1\n\n* expecting success:\n        mv path0 tmp &&\n        mv path2 path0 &&\n        mv tmp path2 &&\n        git update-index --add --replace path2 path0/file2 &&\n        numpath0=$(git ls-files path0 | wc -l) &&\n        test $numpath0 = 1\n\n*   ok 36: update-index D/F conflict\n\n* expecting success:\n        mkdir first &&\n        ln -s ../.git first/.git &&\n        mkdir second &&\n        ln -s ../first second/other &&\n        mkdir third &&\n        dir=\"$(cd .git; pwd -P)\" &&\n        dir2=third/../second/other/.git &&\n        test \"$dir\" = \"$(test-absolute-path $dir2)\" &&\n        file=\"$dir\"/index &&\n        test \"$file\" = \"$(test-absolute-path $dir2/index)\" &&\n        ln -s ../first/file .git/syml &&\n        sym=\"$(cd first; pwd -P)\"/file &&\n        test \"$sym\" = \"$(test-absolute-path $dir2/syml)\"\n\n* FAIL 37: absolute path works as expected\n\n                mkdir first &&\n                ln -s ../.git first/.git &&\n                mkdir second &&\n                ln -s ../first second/other &&\n                mkdir third &&\n                dir=\"$(cd .git; pwd -P)\" &&\n                dir2=third/../second/other/.git &&\n                test \"$dir\" = \"$(test-absolute-path $dir2)\" &&\n                file=\"$dir\"/index &&\n                test \"$file\" = \"$(test-absolute-path $dir2/index)\" &&\n                ln -s ../first/file .git/syml &&\n                sym=\"$(cd first; pwd -P)\"/file &&\n                test \"$sym\" = \"$(test-absolute-path $dir2/syml)\"\n\n\n* failed 20 among 37 test(s)\nmake: *** [t0000-basic.sh] Error 1\n"},{"id":"65568","messageId":"7v1w8hslhw.fsf@gitster.siamese.dyndns.org","threadId":"11620","inReplyTo":"a5eb9c330801160742j645ee50p72ee0a93adf8f94f@mail.gmail.com","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2008-01-16T17:55:55Z","receivedAt":"2008-01-16T17:55:55Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"\"Paul Umbers\" <paul.umbers@gmail.com> writes:\n\n> OK, I think this worked (I'm a Java man, not C/C++). I downloaded the\n> latest 1.5.3 source from the git repository and ran \"make\" with\n> GIT_TEST_OPTS=\"--verbose --debug\". Here's the output:\n>\n> paulumbers@Devteam29 ~/workspace/git/git-1.5.3/t\n> $ make\n> *** t0000-basic.sh ***\n> *   ok 1: .git/objects should be empty after git init in an empty repo.\n> *   ok 2: .git/objects should have 3 subdirectories.\n> *   ok 3: git update-index without --add should fail adding.\n> *   ok 4: git update-index with --add should succeed.\n> * FAIL 5: writing tree out with git write-tree\n>         tree=$(git write-tree)\n\nOften the first error is the most interesting, as your build is\nfailing the most basic operation (like creating a tree), and\nlater parts of the test uses the tree to validate other aspects\nof your build.\n\nAfter seeing the above error, running the test with -i (stop\nimmediately on failure):\n\n\t$ cd t\n        $ sh -x ./t0000-basic.sh -i -v\n\nand looking at the exact command that fails is the usual\napproach for debugging something like this.  During that\ndebugging session, the contents of the directory t/trash (which\nis where the test script runs) left by the failed test is what\nwe often do.\n"},{"id":"65571","messageId":"a5eb9c330801161010h41e55486y5e8a4335dd939b73@mail.gmail.com","threadId":"11620","inReplyTo":"7v1w8hslhw.fsf@gitster.siamese.dyndns.org","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Paul Umbers","fromEmail":"paul.umbers@gmail.com","sentAt":"2008-01-16T18:10:43Z","receivedAt":"2008-01-16T18:10:43Z","isPatch":false,"sender":{"key":"paul.umbers@gmail.com","avatar":null},"body":"Tried Junio's latest suggestion. The resulting output and contents of\nthe trash are attached as a tar.gz. Thanks for all your help guys, I'm\nsorry I can't contribute more but as I mentioned, I'm nowhere near\nproficient in c/c++ or the internals of Git.\n\nPaul\n\nOn Jan 16, 2008 10:55 AM, Junio C Hamano <gitster@pobox.com> wrote:\n> \"Paul Umbers\" <paul.umbers@gmail.com> writes:\n>\n> > OK, I think this worked (I'm a Java man, not C/C++). I downloaded the\n> > latest 1.5.3 source from the git repository and ran \"make\" with\n> > GIT_TEST_OPTS=\"--verbose --debug\". Here's the output:\n> >\n> > paulumbers@Devteam29 ~/workspace/git/git-1.5.3/t\n> > $ make\n> > *** t0000-basic.sh ***\n> > *   ok 1: .git/objects should be empty after git init in an empty repo.\n> > *   ok 2: .git/objects should have 3 subdirectories.\n> > *   ok 3: git update-index without --add should fail adding.\n> > *   ok 4: git update-index with --add should succeed.\n> > * FAIL 5: writing tree out with git write-tree\n> >         tree=$(git write-tree)\n>\n> Often the first error is the most interesting, as your build is\n> failing the most basic operation (like creating a tree), and\n> later parts of the test uses the tree to validate other aspects\n> of your build.\n>\n> After seeing the above error, running the test with -i (stop\n> immediately on failure):\n>\n>         $ cd t\n>         $ sh -x ./t0000-basic.sh -i -v\n>\n> and looking at the exact command that fails is the usual\n> approach for debugging something like this.  During that\n> debugging session, the contents of the directory t/trash (which\n> is where the test script runs) left by the failed test is what\n> we often do.\n>\n>\n\n\n\n-- \nComputer Science is no more about computers than astronomy is about telescopes.\n--- Edsger W. Dijkstra\n\nPaul Umbers MSc MBCS MIAP\npaul.umbers@gmail.com\n"},{"id":"65574","messageId":"20080116183124.GA3181@steel.home","threadId":"11620","inReplyTo":"a5eb9c330801160742j645ee50p72ee0a93adf8f94f@mail.gmail.com","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Alex Riesen","fromEmail":"raa.lkml@gmail.com","sentAt":"2008-01-16T18:31:24Z","receivedAt":"2008-01-16T18:31:24Z","isPatch":false,"sender":{"key":"raa.lkml@gmail.com","avatar":"https://avatars.githubusercontent.com/u/324101?v=4"},"body":"Paul Umbers, Wed, Jan 16, 2008 16:42:46 +0100:\n> OK, I think this worked (I'm a Java man, not C/C++). I downloaded the\n> latest 1.5.3 source from the git repository and ran \"make\" with\n> GIT_TEST_OPTS=\"--verbose --debug\". Here's the output:\n> \n...\n> * expecting success: tree=$(git write-tree)\n> error: invalid object e69de29bb2d1d6434b8b29ae775ad8c2e48c5391\n> fatal: git-write-tree: error building trees\n> * FAIL 5: writing tree out with git write-tree\n>         tree=$(git write-tree)\n\nOk, since you managed to compile it, could you please try to strace\ngit-add? Cygwins strace is a bit unusual, but strace --help can\nprovide enough information to configure it to trace filesystem\noperations.\n\nIn the top-level of Git source directory:\n\n    $ uname -a > somefile\n    $ strace -o log -f -m syscall ./git --exec-path=$(pwd) add somefile\n    $ git ls-files -s somefile\n\nor\n\n    $ strace -o log -f -m syscall ./git --exec-path=$(pwd) hash-object somefile\n\nThan check if the sha1file is missing and send in the log.\n"},{"id":"65575","messageId":"20080116183840.GB3181@steel.home","threadId":"11620","inReplyTo":"a5eb9c330801161010h41e55486y5e8a4335dd939b73@mail.gmail.com","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Alex Riesen","fromEmail":"raa.lkml@gmail.com","sentAt":"2008-01-16T18:38:40Z","receivedAt":"2008-01-16T18:38:40Z","isPatch":false,"sender":{"key":"raa.lkml@gmail.com","avatar":"https://avatars.githubusercontent.com/u/324101?v=4"},"body":"Paul Umbers, Wed, Jan 16, 2008 19:10:43 +0100:\n> > After seeing the above error, running the test with -i (stop\n> > immediately on failure):\n> >\n> >         $ cd t\n> >         $ sh -x ./t0000-basic.sh -i -v\n> >\n> Tried Junio's latest suggestion. The resulting output and contents of\n> the trash are attached as a tar.gz. Thanks for all your help guys, I'm\n\nWell, either it didn't work or you omited something critical (like\nstderr):\n\n    * expecting success: tree=$(git write-tree)\n    * FAIL 5: writing tree out with git write-tree\n\t    tree=$(git write-tree)\n\nthat is too short. All the traces missing. Could you please retry\nwith\n\n    sh -x ./t0000-basic.sh -d -v -i &> test_results.txt\n\n? If that is what you actually did, I suspect you have a very broken\nshell installed. Could you check if you have bash (bash --version)\nand try it instead of \"sh\"?\n"},{"id":"65576","messageId":"a5eb9c330801161048x4b5a88dcsebd7cf9754f72ba6@mail.gmail.com","threadId":"11620","inReplyTo":"20080116183124.GA3181@steel.home","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Paul Umbers","fromEmail":"paul.umbers@gmail.com","sentAt":"2008-01-16T18:48:28Z","receivedAt":"2008-01-16T18:48:28Z","isPatch":false,"sender":{"key":"paul.umbers@gmail.com","avatar":null},"body":"Latest output, log file attached:\n\npaulumbers@Devteam29 ~/workspace/git/git-1.5.3\n$ uname -a > somefile\n\npaulumbers@Devteam29 ~/workspace/git/git-1.5.3\n$ git init\nInitialized empty Git repository in .git/\n\npaulumbers@Devteam29 ~/workspace/git/git-1.5.3\n$ strace -o log -f -m syscall ./git --exec-path=$(pwd) add somefile\n\npaulumbers@Devteam29 ~/workspace/git/git-1.5.3\n$ git ls-files -s somefile\n100644 2ed63d326ffdb2fd4b703780f4d61f1893cac63b 0       somefile\n\nChecking .git/objects/2e ... there is no sha1 file\n\n>\n> Ok, since you managed to compile it, could you please try to strace\n> git-add? Cygwins strace is a bit unusual, but strace --help can\n> provide enough information to configure it to trace filesystem\n> operations.\n>\n> In the top-level of Git source directory:\n>\n>     $ uname -a > somefile\n>     $ strace -o log -f -m syscall ./git --exec-path=$(pwd) add somefile\n>     $ git ls-files -s somefile\n>\n> or\n>\n>     $ strace -o log -f -m syscall ./git --exec-path=$(pwd) hash-object somefile\n>\n> Than check if the sha1file is missing and send in the log.\n>\n>\n\n\n\n-- \nComputer Science is no more about computers than astronomy is about telescopes.\n--- Edsger W. Dijkstra\n\nPaul Umbers MSc MBCS MIAP\npaul.umbers@gmail.com\n"},{"id":"65577","messageId":"a5eb9c330801161050j5dc0720eq5498513a6f99040d@mail.gmail.com","threadId":"11620","inReplyTo":"20080116183124.GA3181@steel.home","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Paul Umbers","fromEmail":"paul.umbers@gmail.com","sentAt":"2008-01-16T18:50:26Z","receivedAt":"2008-01-16T18:50:26Z","isPatch":false,"sender":{"key":"paul.umbers@gmail.com","avatar":null},"body":"Sorry, screwed up the log.tar.gz ... try this one.\n\nOn Jan 16, 2008 11:31 AM, Alex Riesen <raa.lkml@gmail.com> wrote:\n> Paul Umbers, Wed, Jan 16, 2008 16:42:46 +0100:\n> > OK, I think this worked (I'm a Java man, not C/C++). I downloaded the\n> > latest 1.5.3 source from the git repository and ran \"make\" with\n> > GIT_TEST_OPTS=\"--verbose --debug\". Here's the output:\n> >\n> ...\n> > * expecting success: tree=$(git write-tree)\n> > error: invalid object e69de29bb2d1d6434b8b29ae775ad8c2e48c5391\n> > fatal: git-write-tree: error building trees\n> > * FAIL 5: writing tree out with git write-tree\n> >         tree=$(git write-tree)\n>\n> Ok, since you managed to compile it, could you please try to strace\n> git-add? Cygwins strace is a bit unusual, but strace --help can\n> provide enough information to configure it to trace filesystem\n> operations.\n>\n> In the top-level of Git source directory:\n>\n>     $ uname -a > somefile\n>     $ strace -o log -f -m syscall ./git --exec-path=$(pwd) add somefile\n>     $ git ls-files -s somefile\n>\n> or\n>\n>     $ strace -o log -f -m syscall ./git --exec-path=$(pwd) hash-object somefile\n>\n> Than check if the sha1file is missing and send in the log.\n>\n>\n\n\n\n-- \nComputer Science is no more about computers than astronomy is about telescopes.\n--- Edsger W. Dijkstra\n\nPaul Umbers MSc MBCS MIAP\npaul.umbers@gmail.com\n"},{"id":"65578","messageId":"a5eb9c330801161057q61a04d66u2059e08db1bdd3ee@mail.gmail.com","threadId":"11620","inReplyTo":"20080116183840.GB3181@steel.home","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Paul Umbers","fromEmail":"paul.umbers@gmail.com","sentAt":"2008-01-16T18:57:18Z","receivedAt":"2008-01-16T18:57:18Z","isPatch":false,"sender":{"key":"paul.umbers@gmail.com","avatar":null},"body":"Done. The cygwin install is the standard, all-defaults install (and\nI've done it 5 times now). I've attached a tar.gz with the test\nresults run under sh and bash. Hope that helps.\n\nOn Jan 16, 2008 11:38 AM, Alex Riesen <raa.lkml@gmail.com> wrote:\n> Paul Umbers, Wed, Jan 16, 2008 19:10:43 +0100:\n> > > After seeing the above error, running the test with -i (stop\n> > > immediately on failure):\n> > >\n> > >         $ cd t\n> > >         $ sh -x ./t0000-basic.sh -i -v\n> > >\n> > Tried Junio's latest suggestion. The resulting output and contents of\n> > the trash are attached as a tar.gz. Thanks for all your help guys, I'm\n>\n> Well, either it didn't work or you omited something critical (like\n> stderr):\n>\n>     * expecting success: tree=$(git write-tree)\n>     * FAIL 5: writing tree out with git write-tree\n>             tree=$(git write-tree)\n>\n> that is too short. All the traces missing. Could you please retry\n> with\n>\n>     sh -x ./t0000-basic.sh -d -v -i &> test_results.txt\n>\n> ? If that is what you actually did, I suspect you have a very broken\n> shell installed. Could you check if you have bash (bash --version)\n> and try it instead of \"sh\"?\n>\n>\n\n\n\n-- \nComputer Science is no more about computers than astronomy is about telescopes.\n--- Edsger W. Dijkstra\n\nPaul Umbers MSc MBCS MIAP\npaul.umbers@gmail.com\n"},{"id":"65582","messageId":"20080116191250.GC3181@steel.home","threadId":"11620","inReplyTo":"a5eb9c330801161048x4b5a88dcsebd7cf9754f72ba6@mail.gmail.com","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Alex Riesen","fromEmail":"raa.lkml@gmail.com","sentAt":"2008-01-16T19:12:50Z","receivedAt":"2008-01-16T19:12:50Z","isPatch":false,"sender":{"key":"raa.lkml@gmail.com","avatar":"https://avatars.githubusercontent.com/u/324101?v=4"},"body":"Paul Umbers, Wed, Jan 16, 2008 19:48:28 +0100:\n> Latest output, log file attached:\n> \n> paulumbers@Devteam29 ~/workspace/git/git-1.5.3\n> $ uname -a > somefile\n> \n> paulumbers@Devteam29 ~/workspace/git/git-1.5.3\n> $ git init\n> Initialized empty Git repository in .git/\n> \n> paulumbers@Devteam29 ~/workspace/git/git-1.5.3\n> $ strace -o log -f -m syscall ./git --exec-path=$(pwd) add somefile\n> \n> paulumbers@Devteam29 ~/workspace/git/git-1.5.3\n> $ git ls-files -s somefile\n> 100644 2ed63d326ffdb2fd4b703780f4d61f1893cac63b 0       somefile\n> \n> Checking .git/objects/2e ... there is no sha1 file\n> \n\nHmm... Could you try to create a repo so that the whole path contains\nno whitespace? Something like \"c:/tmp/mydir\". Just a suggestion, I am\nstill inspecting your log...\n"},{"id":"65586","messageId":"20080116191737.GD3181@steel.home","threadId":"11620","inReplyTo":"a5eb9c330801161048x4b5a88dcsebd7cf9754f72ba6@mail.gmail.com","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Alex Riesen","fromEmail":"raa.lkml@gmail.com","sentAt":"2008-01-16T19:17:37Z","receivedAt":"2008-01-16T19:17:37Z","isPatch":false,"sender":{"key":"raa.lkml@gmail.com","avatar":"https://avatars.githubusercontent.com/u/324101?v=4"},"body":"Paul Umbers, Wed, Jan 16, 2008 19:48:28 +0100:\n> Latest output, log file attached:\n> \n> paulumbers@Devteam29 ~/workspace/git/git-1.5.3\n> $ uname -a > somefile\n> \n> paulumbers@Devteam29 ~/workspace/git/git-1.5.3\n> $ git init\n> Initialized empty Git repository in .git/\n> \n> paulumbers@Devteam29 ~/workspace/git/git-1.5.3\n> $ strace -o log -f -m syscall ./git --exec-path=$(pwd) add somefile\n> \n\nCould you please retry with \"-m all\"? \"-m syscall\" is not what one\nmight expect, its some tracing of cygwin and not enough at that.\n"},{"id":"65607","messageId":"a5eb9c330801161344i1da447c7sb447bf6274d408e8@mail.gmail.com","threadId":"11620","inReplyTo":"20080116191737.GD3181@steel.home","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Paul Umbers","fromEmail":"paul.umbers@gmail.com","sentAt":"2008-01-16T21:44:10Z","receivedAt":"2008-01-16T21:44:10Z","isPatch":false,"sender":{"key":"paul.umbers@gmail.com","avatar":null},"body":"Here's the log from the latest strace.\n\nOn Jan 16, 2008 12:17 PM, Alex Riesen <raa.lkml@gmail.com> wrote:\n> Paul Umbers, Wed, Jan 16, 2008 19:48:28 +0100:\n> > Latest output, log file attached:\n> >\n> > paulumbers@Devteam29 ~/workspace/git/git-1.5.3\n> > $ uname -a > somefile\n> >\n> > paulumbers@Devteam29 ~/workspace/git/git-1.5.3\n> > $ git init\n> > Initialized empty Git repository in .git/\n> >\n> > paulumbers@Devteam29 ~/workspace/git/git-1.5.3\n> > $ strace -o log -f -m syscall ./git --exec-path=$(pwd) add somefile\n> >\n>\n> Could you please retry with \"-m all\"? \"-m syscall\" is not what one\n> might expect, its some tracing of cygwin and not enough at that.\n>\n>\n\n\n\n-- \nComputer Science is no more about computers than astronomy is about telescopes.\n--- Edsger W. Dijkstra\n\nPaul Umbers MSc MBCS MIAP\npaul.umbers@gmail.com\n"},{"id":"65634","messageId":"20080116234527.GA3499@steel.home","threadId":"11620","inReplyTo":"a5eb9c330801161344i1da447c7sb447bf6274d408e8@mail.gmail.com","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Alex Riesen","fromEmail":"raa.lkml@gmail.com","sentAt":"2008-01-16T23:45:27Z","receivedAt":"2008-01-16T23:45:27Z","isPatch":false,"sender":{"key":"raa.lkml@gmail.com","avatar":"https://avatars.githubusercontent.com/u/324101?v=4"},"body":"Paul Umbers, Wed, Jan 16, 2008 22:44:10 +0100:\n> Here's the log from the latest strace.\n\nSomething is fishy here (aside from the horrible selection of\ninformation in the trace output):\n\n   56 1151793 [main] git 3244 symlink_info::check: 0 = symlink.check (c:\\workspace\\git\\git-1.5.3\\.git\\objects\\2e, 0x22BBE0) (0x2A)\n   58 1151851 [main] git 3244 path_conv::check: this->path(c:\\workspace\\git\\git-1.5.3\\.git\\objects\\2e\\d63d326ffdb2fd4b703780f4d61f1893cac63b), has_acls(1)\n   65 1151916 [main] git 3244 fhandler_base::open: (c:\\workspace\\git\\git-1.5.3\\.git\\objects\\tmp_obj_rOxD3L, 0x110000)\n  206 1152122 [main] git 3244 fhandler_base::set_flags: flags 0x110000, supplied_bin 0x10000\n   76 1152198 [main] git 3244 fhandler_base::set_flags: O_TEXT/O_BINARY set in flags 0x10000\n  308 1152506 [main] git 3244 fhandler_base::set_flags: filemode set to binary\n  146 1152652 [main] git 3244 fhandler_base::open: 0 = NtCreateFile (0x6D0, 20100, c:\\workspace\\git\\git-1.5.3\\.git\\objects\\tmp_obj_rOxD3L, io, NULL, 0, 7, 1, 4400, NULL, 0)\n   74 1152726 [main] git 3244 fhandler_base::open: 1 = fhandler_base::open (c:\\workspace\\git\\git-1.5.3\\.git\\objects\\tmp_obj_rOxD3L, 0x110000)\n  105 1152831 [main] git 3244 fhandler_base::open_fs: 1 = fhandler_disk_file::open (c:\\workspace\\git\\git-1.5.3\\.git\\objects\\tmp_obj_rOxD3L, 0x10000)\n 5915 1158746 [main] git 3244 fhandler_disk_file::link: CreateHardLinkA failed\n   94 1158840 [main] git 3244 seterrno_from_win_error: /ext/build/netrel/src/cygwin-1.5.25-7/winsup/cygwin/fhandler_disk_file.cc:893 windows error 183\n   72 1158912 [main] git 3244 geterrno_from_win_error: windows error 183 == errno 17\n   64 1158976 [main] git 3244 __set_errno: void seterrno_from_win_error(const char*, int, DWORD):310 val 17\n   65 1159041 [main] git 3244 fhandler_base::close: closing '/cygdrive/c/workspace/git/git-1.5.3/.git/objects/tmp_obj_rOxD3L' handle 0x6D0\n  124 1159165 [main] git 3244 link: -1 = link (/cygdrive/c/workspace/git/git-1.5.3/.git/objects/tmp_obj_rOxD3L, /cygdrive/c/workspace/git/git-1.5.3/.git/objects/2e/d63d326ffdb2fd4b703780f4d61f1893cac63b)\n   87 1159252 [main] git 3244 normalize_posix_path: src /cygdrive/c/workspace/git/git-1.5.3/.git/objects/tmp_obj_rOxD3L\n   94 1159346 [main] git 3244 normalize_posix_path: /cygdrive/c/workspace/git/git-1.5.3/.git/objects/tmp_obj_rOxD3L = normalize_posix_path (/cygdrive/c/workspace/git/git-1.5.3/.git/objects/tmp_obj_rOxD3L)\n   65 1159411 [main] git 3244 mount_info::conv_to_win32_path: conv_to_win32_path (/cygdrive/c/workspace/git/git-1.5.3/.git/objects/tmp_obj_rOxD3L)\n  104 1159515 [main] git 3244 mount_info::cygdrive_win32_path: src '/cygdrive/c/workspace/git/git-1.5.3/.git/objects/tmp_obj_rOxD3L', dst 'c:\\workspace\\git\\git-1.5.3\\.git\\objects\\tmp_obj_rOxD3L'\n   73 1159588 [main] git 3244 set_flags: flags: binary (0x2)\n   62 1159650 [main] git 3244 mount_info::conv_to_win32_path: src_path /cygdrive/c/workspace/git/git-1.5.3/.git/objects/tmp_obj_rOxD3L, dst c:\\workspace\\git\\git-1.5.3\\.git\\objects\\tmp_obj_rOxD3L, flags 0x2A, rc 0\n  130 1159780 [main] git 3244 symlink_info::check: not a symlink\n   66 1159846 [main] git 3244 symlink_info::check: 0 = symlink.check (c:\\workspace\\git\\git-1.5.3\\.git\\objects\\tmp_obj_rOxD3L, 0x22C110) (0x2A)\n   67 1159913 [main] git 3244 path_conv::check: this->path(c:\\workspace\\git\\git-1.5.3\\.git\\objects\\tmp_obj_rOxD3L), has_acls(1)\n   64 1159977 [main] git 3244 unlink: _unlink (c:\\workspace\\git\\git-1.5.3\\.git\\objects\\tmp_obj_rOxD3L)\n  763 1160740 [main] git 3244 unlink: 1 = CloseHandle (0x6D0)\n  144 1160884 [main] git 3244 unlink: CreateFile (FILE_FLAG_DELETE_ON_CLOSE) succeeded\n   66 1160950 [main] git 3244 unlink: 0 = unlink (/cygdrive/c/workspace/git/git-1.5.3/.git/objects/tmp_obj_rOxD3L)\n\nCould you locate move_temp_to_file and make it unconditionally rename\nthe tempfile into target sha1 file? It should become something like that:\n\nint move_temp_to_file(const char *tmpfile, const char *filename)\n{\n\tint ret = link_temp_to_file(tmpfile, filename);\n\n\t/*\n\t * Coda hack - coda doesn't like cross-directory links,\n\t * so we fall back to a rename, which will mean that it\n\t * won't be able to check collisions, but that's not a\n\t * big deal.\n\t *\n\t * The same holds for FAT formatted media.\n\t *\n\t * When this succeeds, we just return 0. We have nothing\n\t * left to unlink.\n\t */\n\tif (!rename(tmpfile, filename))\n\t\treturn 0;\n\tret = errno;\n\tunlink(tmpfile);\n\tif (ret) {\n\t\tif (ret != EEXIST) {\n\t\t\treturn error(\"unable to write sha1 filename %s: %s\\n\", filename, strerror(ret));\n\t\t}\n\t\t/* FIXME!!! Collision check here ? */\n\t\treturn error(\"failed to write sha1 filename %s: %s\\n\", filename, strerror(ret));\n\t}\n\n\treturn 0;\n}\n\nDoes someone know, why this function seem to return 0 (success) on\nsomething which looks like an SHA1 collision? And destroy the\ntempfile, even though it is not moved anywhere.\n"},{"id":"65754","messageId":"a5eb9c330801171037v333becc2lbc5873383d07a358@mail.gmail.com","threadId":"11620","inReplyTo":"20080116234527.GA3499@steel.home","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Paul Umbers","fromEmail":"paul.umbers@gmail.com","sentAt":"2008-01-17T18:37:37Z","receivedAt":"2008-01-17T18:37:37Z","isPatch":false,"sender":{"key":"paul.umbers@gmail.com","avatar":null},"body":"Made the changes you specify below & re-ran \"make install\". Attached\nis the log from the latest strace.\n\nIncidentally, I've tried this on two other machines at work with the\nsame results. The steps to reproduce are annoyingly simple: download\ncygwin installer & execute (accept all defaults), select the packages\nspecified for the binary windows install on the git wiki, try to\ncreate a git repository and add files. Frustrating - especially since\nmy desktop at my last job worked just fine.\n\nPaul\n\nOn Jan 16, 2008 4:45 PM, Alex Riesen <raa.lkml@gmail.com> wrote:\nSNIP\n>\n> Could you locate move_temp_to_file and make it unconditionally rename\n> the tempfile into target sha1 file? It should become something like that:\n>\n> int move_temp_to_file(const char *tmpfile, const char *filename)\n> {\n>         int ret = link_temp_to_file(tmpfile, filename);\n>\n>         /*\n>          * Coda hack - coda doesn't like cross-directory links,\n>          * so we fall back to a rename, which will mean that it\n>          * won't be able to check collisions, but that's not a\n>          * big deal.\n>          *\n>          * The same holds for FAT formatted media.\n>          *\n>          * When this succeeds, we just return 0. We have nothing\n>          * left to unlink.\n>          */\n>         if (!rename(tmpfile, filename))\n>                 return 0;\n>         ret = errno;\n>         unlink(tmpfile);\n>         if (ret) {\n>                 if (ret != EEXIST) {\n>                         return error(\"unable to write sha1 filename %s: %s\\n\", filename, strerror(ret));\n>                 }\n>                 /* FIXME!!! Collision check here ? */\n>                 return error(\"failed to write sha1 filename %s: %s\\n\", filename, strerror(ret));\n>         }\n>\n>         return 0;\n> }\n>\n> Does someone know, why this function seem to return 0 (success) on\n> something which looks like an SHA1 collision? And destroy the\n> tempfile, even though it is not moved anywhere.\n>\n>\n\n\n\n-- \nComputer Science is no more about computers than astronomy is about telescopes.\n--- Edsger W. Dijkstra\n\nPaul Umbers MSc MBCS MIAP\npaul.umbers@gmail.com\n"},{"id":"65760","messageId":"alpine.LFD.1.00.0801171046040.14959@woody.linux-foundation.org","threadId":"11620","inReplyTo":"a5eb9c330801171037v333becc2lbc5873383d07a358@mail.gmail.com","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Linus Torvalds","fromEmail":"torvalds@linux-foundation.org","sentAt":"2008-01-17T18:51:58Z","receivedAt":"2008-01-17T18:51:58Z","isPatch":false,"sender":{"key":"torvalds@linux-foundation.org","avatar":"https://avatars.githubusercontent.com/u/1024025?v=4"},"body":"\n\nOn Thu, 17 Jan 2008, Paul Umbers wrote:\n> \n> Incidentally, I've tried this on two other machines at work with the\n> same results. The steps to reproduce are annoyingly simple: download\n> cygwin installer & execute (accept all defaults), select the packages\n> specified for the binary windows install on the git wiki, try to\n> create a git repository and add files. Frustrating - especially since\n> my desktop at my last job worked just fine.\n\nIs there perhaps some odd virus scanner or something that interferes with \nfilesystem operations? It sounds like you have consistent problems on \n*some* machines, but others cannot reproduce them, which makes me wonder \nif there is some setup issue. Maybe your company machines have some DLL or \nsomething that interferes subtly with cygwin.\n\n(Eg there might be another cygwin install hidden off somewhere?)\n\nThe \"virus scanner\" thing was just a random thought, but under windows \nit's not unheard of to have things that intercept filesystem accesses for \nthings like that. Virus scanners, \"security features\", rootkits from Sony \nor other sources of trouble etc - you name it. \n\nThat kind of environmental difference would explain why you didn't see it \non another machine, and why others seem to not be able to reproduce it \neither.\n\n\t\t\tLinus\n"},{"id":"65764","messageId":"478FA438.9010909@gmail.com","threadId":"11620","inReplyTo":"20080116234527.GA3499@steel.home","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Nicholas Wourms","fromEmail":"nwourms@gmail.com","sentAt":"2008-01-17T18:53:44Z","receivedAt":"2008-01-17T18:53:44Z","isPatch":false,"sender":{"key":"nwourms@gmail.com","avatar":null},"body":"Alex Riesen wrote:\n> Paul Umbers, Wed, Jan 16, 2008 22:44:10 +0100:\n>> Here's the log from the latest strace.\n> \n> Something is fishy here (aside from the horrible selection of\n> information in the trace output):\n> \n\nThat is a matter of opinion. Besides, Cygwin's strace was designed first and\nforemost with debugging the Cygwin dll in mind. Perhaps the choice of name for\nthe utility was a poor one, since it implies that it ought to be the same as\nthe official strace.\n\nAs for the matter at hand:\n\nFirst, *you must* make sure you inspect every directory in your PATH for other\ncopies of cygwin1.dll. Sometimes, without telling you, other software packages\nwill distribute the cygwin1.dll. Often times this is an older version of that\ndll. If there are any these found outside of the Cygwin installation tree, you\nmust remove them from your PATH.\n\nSecondly, reinstalling Cygwin by rerunning setup is not enough. Cygwin is\npretty self-contained and non-invasive (contrary to the popular FUD spread by\nMinGWists), but it does have 2 Registry keys which should be axed if you want a\nclean install. They are:\n\nHKEY_CURRENT_USER\\Software\\Cygnus Solutions\nHKEY_LOCAL_MACHINE\\Software\\Cygnus Solutions\n\nLastly, has the user actually tried reporting this problem to\n\"cygwin@cygwin.com\"? That is the proper list for reporting problems with\nofficial cygwin packaged applications. Both the maintainer of the \"git\" Cygwin\npackage and the core Cygwin developers monitor that list, so you are much more\nlikely to get a solution to your problem there. Nevertheless, it does seem that\nin this case it might be a problem with git's handling of failures to create\nhard links. But do keep this in mind for future reference.\n\nCheers,\nNicholas\n"},{"id":"65767","messageId":"alpine.LSU.1.00.0801171916350.5731@racer.site","threadId":"11620","inReplyTo":"alpine.LFD.1.00.0801171046040.14959@woody.linux-foundation.org","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2008-01-17T19:17:27Z","receivedAt":"2008-01-17T19:17:27Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Thu, 17 Jan 2008, Linus Torvalds wrote:\n\n> On Thu, 17 Jan 2008, Paul Umbers wrote:\n> > \n> > Incidentally, I've tried this on two other machines at work with the \n> > same results. The steps to reproduce are annoyingly simple: download \n> > cygwin installer & execute (accept all defaults), select the packages \n> > specified for the binary windows install on the git wiki, try to \n> > create a git repository and add files. Frustrating - especially since \n> > my desktop at my last job worked just fine.\n> \n> Is there perhaps some odd virus scanner or something that interferes \n> with filesystem operations?\n\nOr that Logitech Abomination of an \"Updater service\"?  On one of my \nmachines, I had tons of problems before just uninstalling those \"drivers\".\n\nCiao,\nDscho\n"},{"id":"65773","messageId":"a5eb9c330801171213l2c06c4e4s718324f5b66f0db6@mail.gmail.com","threadId":"11620","inReplyTo":"alpine.LFD.1.00.0801171046040.14959@woody.linux-foundation.org","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Paul Umbers","fromEmail":"paul.umbers@gmail.com","sentAt":"2008-01-17T20:13:56Z","receivedAt":"2008-01-17T20:13:56Z","isPatch":false,"sender":{"key":"paul.umbers@gmail.com","avatar":null},"body":"Quite possibly. We have Embassy Trust Suite and Symantec Endpoint\nSecurity installed on all our work machines, while I use ClamWin at\nhome and don't have this problem. The symptoms would indicate that it\nis an environmental difference and this is certainly a candidate.\n\nI've disabled as many of the Symantec features as I can without\nuninstalling it (which I don't have permissions to do), and I still\nget the same problem. So, if it is Symantec then it's at a level\ndeeper than I can go. Not sure about the Embassy suite, I'll have a\nplay and see what I can find but it's tricky as the sysadmins here\ndon't like us developer-types playing with security settings on our\nmachines. Go figure.\n\nI've also tried a complete (including registry keys) reinstall of\ncygwin (as per Nicholas' email) and still have the problem. I'll try a\nsummary posting to the cygwin group as suggested to see if they know\nof anything over there. If there's anything else I can do in the\nmeantime, please let me know. I'll be closing my eyes real tight and\nhoping that next time I open them I have a Linux desktop in front of\nme :-)\n\nThanks for all your help guys,\nPaul\n\nOn Jan 17, 2008 11:51 AM, Linus Torvalds <torvalds@linux-foundation.org> wrote:\n>\n>\n> On Thu, 17 Jan 2008, Paul Umbers wrote:\n> >\n> > Incidentally, I've tried this on two other machines at work with the\n> > same results. The steps to reproduce are annoyingly simple: download\n> > cygwin installer & execute (accept all defaults), select the packages\n> > specified for the binary windows install on the git wiki, try to\n> > create a git repository and add files. Frustrating - especially since\n> > my desktop at my last job worked just fine.\n>\n> Is there perhaps some odd virus scanner or something that interferes with\n> filesystem operations? It sounds like you have consistent problems on\n> *some* machines, but others cannot reproduce them, which makes me wonder\n> if there is some setup issue. Maybe your company machines have some DLL or\n> something that interferes subtly with cygwin.\n>\n> (Eg there might be another cygwin install hidden off somewhere?)\n>\n> The \"virus scanner\" thing was just a random thought, but under windows\n> it's not unheard of to have things that intercept filesystem accesses for\n> things like that. Virus scanners, \"security features\", rootkits from Sony\n> or other sources of trouble etc - you name it.\n>\n> That kind of environmental difference would explain why you didn't see it\n> on another machine, and why others seem to not be able to reproduce it\n> either.\n>\n>                         Linus\n>\n\n\n\n-- \nComputer Science is no more about computers than astronomy is about telescopes.\n--- Edsger W. Dijkstra\n\nPaul Umbers MSc MBCS MIAP\npaul.umbers@gmail.com\n"},{"id":"65774","messageId":"20080117201829.GA3615@steel.home","threadId":"11620","inReplyTo":"a5eb9c330801171037v333becc2lbc5873383d07a358@mail.gmail.com","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Alex Riesen","fromEmail":"raa.lkml@gmail.com","sentAt":"2008-01-17T20:18:29Z","receivedAt":"2008-01-17T20:18:29Z","isPatch":false,"sender":{"key":"raa.lkml@gmail.com","avatar":"https://avatars.githubusercontent.com/u/324101?v=4"},"body":"Paul Umbers, Thu, Jan 17, 2008 19:37:37 +0100:\n> Made the changes you specify below & re-ran \"make install\".\n\nno need for \"make install\", just \"make\" would be enough:\nyou run the commands explicitely in the current directory:\n\n    strace -o log -mall -f ./git --exec-path $(pwd) add testfile\n\n> Attached is the log from the latest strace.\n\nAre you sure? It looks like a strace of some random git program...\nThe link, which failed in log_2 attempt is not even called.\nOh... Could you redo the test after running \"git reset --hard\" first?\n\nAnd have you tried running tests in a directory without whitespace in\npath? Like \"c:/windows\", for example?\n"},{"id":"65775","messageId":"alpine.LFD.1.00.0801171218470.14959@woody.linux-foundation.org","threadId":"11620","inReplyTo":"a5eb9c330801171213l2c06c4e4s718324f5b66f0db6@mail.gmail.com","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Linus Torvalds","fromEmail":"torvalds@linux-foundation.org","sentAt":"2008-01-17T20:24:27Z","receivedAt":"2008-01-17T20:24:27Z","isPatch":false,"sender":{"key":"torvalds@linux-foundation.org","avatar":"https://avatars.githubusercontent.com/u/1024025?v=4"},"body":"\n\nOn Thu, 17 Jan 2008, Paul Umbers wrote:\n>\n> Quite possibly. We have Embassy Trust Suite and Symantec Endpoint\n> Security installed\n\nThat's it.\n\nDo a google for \n\n\tEmbassy Trust Suite cygwin\n\nand revel in all the reports of problems with cygwin with that thing \ninstalled.\n\nSee for example Dave Korn at:\n\n\thttp://www.cygwin.com/ml/cygwin/2007-05/msg00132.html\n\nor this on:\n\n\thttp://www.cygwin.com/ml/cygwin-talk/2007-q1/msg00270.html\n\thttp://sourceware.org/ml/cygwin/2006-05/msg00856.html\n\nso I'm pretty sure that's it.\n\nAhh, the joys of Windows.\n\nBtw, did you ever test the msys version of git\n\n\thttp://code.google.com/p/msysgit/\n\nsince I suspect that it's likely to not just be faster, but also more \nrobust, since there is a much thinner layer between git and windows (and \nthus hopefully many fewer complex dependencies that can go wrong).\n\n\t\t\tLinus\n\t\t\n"},{"id":"65776","messageId":"20080117203054.GB3615@steel.home","threadId":"11620","inReplyTo":"478FA438.9010909@gmail.com","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Alex Riesen","fromEmail":"raa.lkml@gmail.com","sentAt":"2008-01-17T20:30:54Z","receivedAt":"2008-01-17T20:30:54Z","isPatch":false,"sender":{"key":"raa.lkml@gmail.com","avatar":"https://avatars.githubusercontent.com/u/324101?v=4"},"body":"Nicholas Wourms, Thu, Jan 17, 2008 19:53:44 +0100:\n> Alex Riesen wrote:\n> > \n> > Something is fishy here (aside from the horrible selection of\n> > information in the trace output):\n> > \n> \n> That is a matter of opinion. Besides, Cygwin's strace was designed first and\n> foremost with debugging the Cygwin dll in mind. Perhaps the choice of name for\n> the utility was a poor one, since it implies that it ought to be the same as\n> the official strace.\n\nPerhaps. I actually did not intend debugging Cygwin dll at all and\njust assumed (being used to the very useful output of linux' strace)\nI get something *useful*. It was kinda usefult, just not exactly for\nthis problem.\n\nAs to reporting the issue to cygwin list: there are very trivial\nproblems which when long enough overlooked tend to give an impression\nof malignant stupidity. I expect a wish to change the output of this\nparticular program in this particular project wont ever be granted\nhowever long argued and whatever the arguments.\n\nProve me wrong (IOW: report it to cygwin and see something good happen).\n"},{"id":"65777","messageId":"478FBCB7.8090709@obry.net","threadId":"11620","inReplyTo":"alpine.LFD.1.00.0801171218470.14959@woody.linux-foundation.org","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Pascal Obry","fromEmail":"pascal@obry.net","sentAt":"2008-01-17T20:38:15Z","receivedAt":"2008-01-17T20:38:15Z","isPatch":false,"sender":{"key":"pascal@obry.net","avatar":"https://avatars.githubusercontent.com/u/467069?v=4"},"body":"Linus Torvalds a écrit :\n> Ahh, the joys of Windows.\n\nWell don't blame windows for every problem in the world ;) ... in this \nspecific case I think it is more like a stupid anti-virus problem. It \nturn out that those pieces of software are probably the most buggy one \nand at the same time just useless!\n\nPascal.\n\n-- \n\n--|------------------------------------------------------\n--| Pascal Obry                           Team-Ada Member\n--| 45, rue Gabriel Peri - 78114 Magny Les Hameaux FRANCE\n--|------------------------------------------------------\n--|              http://www.obry.net\n--| \"The best way to travel is by means of imagination\"\n--|\n--| gpg --keyserver wwwkeys.pgp.net --recv-key C1082595\n"},{"id":"65779","messageId":"alpine.LSU.1.00.0801172049370.5731@racer.site","threadId":"11620","inReplyTo":"478FBCB7.8090709@obry.net","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2008-01-17T20:50:07Z","receivedAt":"2008-01-17T20:50:07Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Thu, 17 Jan 2008, Pascal Obry wrote:\n\n> Linus Torvalds a écrit :\n> > Ahh, the joys of Windows.\n> \n> Well don't blame windows for every problem in the world ;) ... in this\n> specific case I think it is more like a stupid anti-virus problem.\n\nAnd who exactly do you think is to blame for the virus problem?  Ah \n*throwshishandsintheair*.\n\nCiao,\nDscho\n"},{"id":"65781","messageId":"478FC03D.3040708@obry.net","threadId":"11620","inReplyTo":"alpine.LSU.1.00.0801172049370.5731@racer.site","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Pascal Obry","fromEmail":"pascal@obry.net","sentAt":"2008-01-17T20:53:17Z","receivedAt":"2008-01-17T20:53:17Z","isPatch":false,"sender":{"key":"pascal@obry.net","avatar":"https://avatars.githubusercontent.com/u/467069?v=4"},"body":"Johannes Schindelin a écrit :\n> And who exactly do you think is to blame for the virus problem?  Ah \n> *throwshishandsintheair*.\n\nI may be different, but I can swear that I live without anti-virus and I \nhave still to see a virus on my computers. I just refrain from \ndownloading all these nice-very-little-useless gizmo for Windows.\n\nPascal.\n\n-- \n\n--|------------------------------------------------------\n--| Pascal Obry                           Team-Ada Member\n--| 45, rue Gabriel Peri - 78114 Magny Les Hameaux FRANCE\n--|------------------------------------------------------\n--|              http://www.obry.net\n--| \"The best way to travel is by means of imagination\"\n--|\n--| gpg --keyserver wwwkeys.pgp.net --recv-key C1082595\n"},{"id":"65792","messageId":"a5eb9c330801171432p4e3600a1x91f088bcafdb876d@mail.gmail.com","threadId":"11620","inReplyTo":"alpine.LFD.1.00.0801171218470.14959@woody.linux-foundation.org","subject":"Re: Git Cygwin - unable to create any repository - help!","fromName":"Paul Umbers","fromEmail":"paul.umbers@gmail.com","sentAt":"2008-01-17T22:32:53Z","receivedAt":"2008-01-17T22:32:53Z","isPatch":false,"sender":{"key":"paul.umbers@gmail.com","avatar":null},"body":"Yup. That looks like it - dontcha just gotta love the way some vendors\nabuse the Windows OS.\n\nI think I'll give msysgit a try, failing that I can always disable the\nEmbassy Suite (since it seems it's only needed for the fingerprint\nreader which I don't use anyways).\n\nGuys, thanks for all your help - you've been terrific.\n\nPaul\n\nOn Jan 17, 2008 1:24 PM, Linus Torvalds <torvalds@linux-foundation.org> wrote:\n>\n>\n> On Thu, 17 Jan 2008, Paul Umbers wrote:\n> >\n> > Quite possibly. We have Embassy Trust Suite and Symantec Endpoint\n> > Security installed\n>\n> That's it.\n>\n> Do a google for\n>\n>         Embassy Trust Suite cygwin\n>\n> and revel in all the reports of problems with cygwin with that thing\n> installed.\n>\n> See for example Dave Korn at:\n>\n>         http://www.cygwin.com/ml/cygwin/2007-05/msg00132.html\n>\n> or this on:\n>\n>         http://www.cygwin.com/ml/cygwin-talk/2007-q1/msg00270.html\n>         http://sourceware.org/ml/cygwin/2006-05/msg00856.html\n>\n> so I'm pretty sure that's it.\n>\n> Ahh, the joys of Windows.\n>\n> Btw, did you ever test the msys version of git\n>\n>         http://code.google.com/p/msysgit/\n>\n> since I suspect that it's likely to not just be faster, but also more\n> robust, since there is a much thinner layer between git and windows (and\n> thus hopefully many fewer complex dependencies that can go wrong).\n>\n>                         Linus\n>\n>\n\n\n\n-- \nComputer Science is no more about computers than astronomy is about telescopes.\n--- Edsger W. Dijkstra\n\nPaul Umbers MSc MBCS MIAP\npaul.umbers@gmail.com\n"}]}