{"thread":{"id":"6496","subject":"GIT+CYGWIN annoying test failure","startedAt":"2007-01-24T02:18:35Z","lastAt":"2007-02-16T01:26:36Z","messageCount":9,"participants":["SungHyun Nam","Johannes Schindelin","Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"32479","messageId":"45B6C1FB.7060005@gmail.com","threadId":"6496","inReplyTo":null,"subject":"GIT+CYGWIN annoying test failure","fromName":"SungHyun Nam","fromEmail":"goweol@gmail.com","sentAt":"2007-01-24T02:18:35Z","receivedAt":"2007-01-24T02:18:35Z","isPatch":false,"sender":{"key":"goweol@gmail.com","avatar":null},"body":"Hello,\n\nFirst of all, this problem always existed to me. I was lazy to report.\nPlease check the failure logs and my GIT build script below.\nMy build script runs 'make test' twice because of this annoying failure.\nIt does not mean that the first test always failed, but very often.\nIf it occurs, the first test failed at 't1000-read-tree-m-3way.sh'\nalways. And in this case, 2nd test always succeeded.\n\nThanks,\n\nGIT test failure logs\n====================================================================\n\n2007-01-15\n==============================================================================\nGIT_VERSION = 1.5.0.rc1.gf4b6c-dirty\n\n...\n* FAIL 57: 5 - must match in !O && A && B && A==B case.\n        rm -f .git/index LL &&\n             cp .orig-A/LL LL &&\n             git-update-index --add LL &&\n             echo extra >>LL &&\n             git-read-tree -m 3fe085e0589de4327971d50e416fc292dd00fbfe\n997bbc4a0a51e0574168a4f637739380edebe4d7\n76d47d681d7f1d4fa975334a9a0ba8a6eeea2226 &&\n             check_result\n...\n* FAIL 62: 9 - must match and be up-to-date in O && A && !B && O!=A case\n        rm -f .git/index MD &&\n             cp .orig-A/MD MD &&\n             git-update-index --add MD &&\n             git-read-tree -m 3fe085e0589de4327971d50e416fc292dd00fbfe\n997bbc4a0a51e0574168a4f637739380edebe4d7\n76d47d681d7f1d4fa975334a9a0ba8a6eeea2226 &&\n             check_result\n...\n* FAIL 65: 10 - must match and be up-to-date in O && A && !B && O==A case\n        rm -f .git/index ND &&\n             cp .orig-A/ND ND &&\n             git-update-index --add ND &&\n             git-read-tree -m 3fe085e0589de4327971d50e416fc292dd00fbfe\n997bbc4a0a51e0574168a4f637739380edebe4d7\n76d47d681d7f1d4fa975334a9a0ba8a6eeea2226 &&\n             check_result\n...\n* failed 3 among 83 test(s)\nmake[1]: *** [t1000-read-tree-m-3way.sh] Error 1\nmake[1]: Leaving directory `/c/user/namsh/unix/git/t'\nmake: *** [test] Error 2\n\n\n2007-01-18\n==============================================================================\nGIT_VERSION = 1.5.0.rc1.g556b-dirty\n\n...\n* FAIL 50: 3 - must match A in !O && A && !B case.\n        rm -f .git/index AN &&\n             cp .orig-A/AN AN &&\n             git-update-index --add AN &&\n             git-read-tree -m 3fe085e0589de4327971d50e416fc292dd00fbfe\n997bbc4a0a51e0574168a4f637739380edebe4d7\n76d47d681d7f1d4fa975334a9a0ba8a6eeea2226 &&\n             check_result\n...\n* FAIL 53: 4 - must match and be up-to-date in !O && A && B && A!=B case.\n        rm -f .git/index AA &&\n             cp .orig-A/AA AA &&\n             git-update-index --add AA &&\n             git-read-tree -m 3fe085e0589de4327971d50e416fc292dd00fbfe\n997bbc4a0a51e0574168a4f637739380edebe4d7\n76d47d681d7f1d4fa975334a9a0ba8a6eeea2226 &&\n             check_result\n...\n* failed 2 among 83 test(s)\nmake[1]: *** [t1000-read-tree-m-3way.sh] Error 1\nmake[1]: Leaving directory `/c/user/namsh/unix/git/t'\nmake: *** [test] Error 2\n\n2007-01-24\n==============================================================================\nGIT_VERSION = 1.5.0.rc2.gc9a89-dirty\n\n...\n* FAIL 50: 3 - must match A in !O && A && !B case.\n        rm -f .git/index AN &&\n             cp .orig-A/AN AN &&\n             git-update-index --add AN &&\n             git-read-tree -m 3fe085e0589de4327971d50e416fc292dd00fbfe\n997bbc4a0a51e0574168a4f637739380edebe4d7\n76d47d681d7f1d4fa975334a9a0ba8a6eeea2226 &&\n             check_result\n...\n* failed 1 among 83 test(s)\nmake[1]: *** [t1000-read-tree-m-3way.sh] Error 1\nmake[1]: Leaving directory `/c/user/namsh/unix/git/t'\nmake: *** [test] Error 2\n\n\n\nGIT build script\n====================================================================\n\t...\n\tif test ! -r ./configure || test ./configure.ac -nt ./configure\n\tthen\n\t    printf \"Run autoconf...\"\n\t    autoconf\n\t    echo \" DONE!\"\n\tfi\n\tif test ! -r ./config.mak.autogen \\\n\t    || test ./configure -nt ./config.mak.autogen\n\tthen\n\t    ./configure --prefix=$prefix\n\tfi\n\n\t# generate personal configuration makefile\n\t[ -r config.mak ] && rm -f config.mak\n\ttouch config.mak\n\t[ -r config.mak ] || die \"Cannot generate config.mak\"\n\t$E \"CFLAGS=$CFLAGS\" >> config.mak\n\t$E \"DESTDIR=$DESTDIR\" >> config.mak\n\t# git's configure script could not find the libiconv for CYGWIN.\n\t$E \"NEEDS_LIBICONV=1\\nNO_ICONV=\" >> config.mak\n\t$E \"NO_PERL_MAKEMAKER=1\" >> config.mak # have no PERL MakeMaker\n\t$E \"NO_TRUSTABLE_FILEMODE=\" >> config.mak # default filemode = true\n\t# FAT32 has issues with 'mmap', but I only have NTFS.\n\t$E \"NO_MMAP=\" >> config.mak\n\n\tif make all doc\n\tthen\n\t    # I don't use CVS/Subversion. So skip those tests.\n\t    export GIT_SKIP_TESTS='t91?? t92??'\n\t    if ! make test\n\t    then\n\t\t${E} \"\\n*** ${R}Test failed${N} ***\\n\"\n\n\t\t# I don't know why... Sometimes first 'make test' failed.\n\t\tprintf \"Try again... \"\n\t\tif ! make test >/dev/null 2>&1\n\t\tthen\n\t\t    die \"2nd test failed also.\"\n\t\tfi\n\t\tprintf \"OK!\"\n\t    fi\n\n\t    rm -f \"$gitLog\"\n\t    if ! make install install-doc > \"$gitLog\" 2>&1\n\t    then\n\t\tdie \"Install failed. Check $gitLog\"\n\t    fi\n\t    rm -f \"$gitLog\"\n\t    ...\n\tfi\n"},{"id":"32497","messageId":"Pine.LNX.4.63.0701241041190.22628@wbgn013.biozentrum.uni-wuerzburg.de","threadId":"6496","inReplyTo":"45B6C1FB.7060005@gmail.com","subject":"Re: GIT+CYGWIN annoying test failure","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-01-24T09:53:15Z","receivedAt":"2007-01-24T09:53:15Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Wed, 24 Jan 2007, SungHyun Nam wrote:\n\n> First of all, this problem always existed to me. I was lazy to report. \n> Please check the failure logs and my GIT build script below. [...] the \n> first test failed at 't1000-read-tree-m-3way.sh' always. And in this \n> case, 2nd test always succeeded.\n> \n> * FAIL 57: 5 - must match in !O && A && B && A==B case.\n>         rm -f .git/index LL &&\n>              cp .orig-A/LL LL &&\n>              git-update-index --add LL &&\n>              echo extra >>LL &&\n>              git-read-tree -m 3fe085e0589de4327971d50e416fc292dd00fbfe\n> 997bbc4a0a51e0574168a4f637739380edebe4d7\n> 76d47d681d7f1d4fa975334a9a0ba8a6eeea2226 &&\n>              check_result\n\nIt is not directly apparent what is causing this error. Could you please \nchange your script to use \"-i -v\" on the tests? I.e. instead of:\n\t\n> \t    if ! make test\n\nthis:\n\n\t    if ! (cd t; GIT_TEST_OPTS=\"-i -v\" make)\n\nIt should give us a better idea what happened, since we also see the \nerror messages of the git commands.\n\nIf it is still not apparent what went wrong, there is unfortunately no way \naround doing that particular test case manually, as to find out what went \nwrong. Since you seem to be the only one who can reproduce this bug, it \nboils down to you having to do the leg work.\n\nPlease keep us posted!\n\nCiao,\nDscho\n"},{"id":"32941","messageId":"45BD4AA9.5090400@gmail.com","threadId":"6496","inReplyTo":"Pine.LNX.4.63.0701241041190.22628@wbgn013.biozentrum.uni-wuerzburg.de","subject":"Re: GIT+CYGWIN annoying test failure","fromName":"SungHyun Nam","fromEmail":"goweol@gmail.com","sentAt":"2007-01-29T01:15:21Z","receivedAt":"2007-01-29T01:15:21Z","isPatch":false,"sender":{"key":"goweol@gmail.com","avatar":null},"body":"Hello,\n\nJohannes Schindelin wrote:\n> On Wed, 24 Jan 2007, SungHyun Nam wrote:\n> \n>> First of all, this problem always existed to me. I was lazy to report. \n>> Please check the failure logs and my GIT build script below. [...] the \n>> first test failed at 't1000-read-tree-m-3way.sh' always. And in this \n>> case, 2nd test always succeeded.\n>>\n>> * FAIL 57: 5 - must match in !O && A && B && A==B case.\n>>         rm -f .git/index LL &&\n>>              cp .orig-A/LL LL &&\n>>              git-update-index --add LL &&\n>>              echo extra >>LL &&\n>>              git-read-tree -m 3fe085e0589de4327971d50e416fc292dd00fbfe\n>> 997bbc4a0a51e0574168a4f637739380edebe4d7\n>> 76d47d681d7f1d4fa975334a9a0ba8a6eeea2226 &&\n>>              check_result\n> \n> It is not directly apparent what is causing this error. Could you please \n> change your script to use \"-i -v\" on the tests? I.e. instead of:\n> \t\n>> \t    if ! make test\n> \n> this:\n> \n> \t    if ! (cd t; GIT_TEST_OPTS=\"-i -v\" make)\n> \n> It should give us a better idea what happened, since we also see the \n> error messages of the git commands.\n> \n> If it is still not apparent what went wrong, there is unfortunately no way \n> around doing that particular test case manually, as to find out what went \n> wrong. Since you seem to be the only one who can reproduce this bug, it \n> boils down to you having to do the leg work.\n> \n\nI'm not sure I can believe my system, Windows or CYGWIN.\nIt seems GIT has no problem.\n\nThanks,\n\n2007-01-25\n=========================================================================\n* expecting success: rm -fr [NDMALTS][NDMALTSF] Z &&\n     rm .git/index &&\n     git-read-tree 997bbc4a0a51e0574168a4f637739380edebe4d7 &&\n     git-checkout-index -f -u -a &&\n     git-read-tree -m 3fe085e0589de4327971d50e416fc292dd00fbfe\n997bbc4a0a51e0574168a4f637739380edebe4d7\n76d47d681d7f1d4fa975334a9a0ba8a6eeea2226 &&\n     check_result\nt1000-read-tree-m-3way.sh: line 133: current: Permission denied\n* FAIL 46: 3-way merge with git-read-tree -m, match H\n        rm -fr [NDMALTS][NDMALTSF] Z &&\n             rm .git/index &&\n             git-read-tree 997bbc4a0a51e0574168a4f637739380edebe4d7 &&\n             git-checkout-index -f -u -a &&\n             git-read-tree -m 3fe085e0589de4327971d50e416fc292dd00fbfe\n997bbc4a0a51e0574168a4f637739380edebe4d7\n76d47d681d7f1d4fa975334a9a0ba8a6eeea2226 &&\n             check_result\nmake: *** [t1000-read-tree-m-3way.sh] Error 1\n\n\n2007-01-29\n=========================================================================\n* expecting success: rm -f .git/index LL &&\n     cp .orig-A/LL LL &&\n     git-update-index --add LL &&\n     echo extra >>LL &&\n     git-read-tree -m 3fe085e0589de4327971d50e416fc292dd00fbfe\n997bbc4a0a51e0574168a4f637739380edebe4d7\n76d47d681d7f1d4fa975334a9a0ba8a6eeea2226 &&\n     check_result\nt1000-read-tree-m-3way.sh: line 133: current: Permission denied\n* FAIL 57: 5 - must match in !O && A && B && A==B case.\n        rm -f .git/index LL &&\n             cp .orig-A/LL LL &&\n             git-update-index --add LL &&\n             echo extra >>LL &&\n             git-read-tree -m 3fe085e0589de4327971d50e416fc292dd00fbfe\n997bbc4a0a51e0574168a4f637739380edebe4d7\n76d47d681d7f1d4fa975334a9a0ba8a6eeea2226 &&\n             check_result\nmake: *** [t1000-read-tree-m-3way.sh] Error 1\n"},{"id":"33247","messageId":"Pine.LNX.4.63.0702011703280.22628@wbgn013.biozentrum.uni-wuerzburg.de","threadId":"6496","inReplyTo":"45BD4AA9.5090400@gmail.com","subject":"Re: GIT+CYGWIN annoying test failure","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-02-01T16:04:09Z","receivedAt":"2007-02-01T16:04:09Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Mon, 29 Jan 2007, SungHyun Nam wrote:\n\n> I'm not sure I can believe my system, Windows or CYGWIN.\n> It seems GIT has no problem.\n\nAre you perchance on a FAT32 system?\n\nCiao,\nDscho\n"},{"id":"33320","messageId":"45C2818D.4020408@gmail.com","threadId":"6496","inReplyTo":"Pine.LNX.4.63.0702011703280.22628@wbgn013.biozentrum.uni-wuerzburg.de","subject":"Re: GIT+CYGWIN annoying test failure","fromName":"SungHyun Nam","fromEmail":"goweol@gmail.com","sentAt":"2007-02-02T00:10:53Z","receivedAt":"2007-02-02T00:10:53Z","isPatch":false,"sender":{"key":"goweol@gmail.com","avatar":null},"body":"Johannes Schindelin wrote:\n> \n> On Mon, 29 Jan 2007, SungHyun Nam wrote:\n> \n>> I'm not sure I can believe my system, Windows or CYGWIN.\n>> It seems GIT has no problem.\n> \n> Are you perchance on a FAT32 system?\n\nNo, I have 3 NTFS partitions (C=program, D=work/data, E=temp).\nThere's no FAT32.\n\nThough I have no FAT32, I even tried the NO_MMAP thing.\nAnd it didn't help.\n\nThanks,\nnamsh\n"},{"id":"34661","messageId":"45D3AF9B.40205@gmail.com","threadId":"6496","inReplyTo":"45BD4AA9.5090400@gmail.com","subject":"Re: GIT+CYGWIN annoying test failure","fromName":"SungHyun Nam","fromEmail":"goweol@gmail.com","sentAt":"2007-02-15T00:55:55Z","receivedAt":"2007-02-15T00:55:55Z","isPatch":false,"sender":{"key":"goweol@gmail.com","avatar":null},"body":"Hello,\n\nIt seems the patch below work-around the problem.\nI tested this patch several times after knowing the problem.\n\nThanks,\nnamsh\n\ndiff --git a/t/t1000-read-tree-m-3way.sh b/t/t1000-read-tree-m-3way.sh\nindex d0af8c3..422922e 100755\n--- a/t/t1000-read-tree-m-3way.sh\n+++ b/t/t1000-read-tree-m-3way.sh\n@@ -130,6 +130,7 @@ _x40='[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]'\n _x40=\"$_x40$_x40$_x40$_x40$_x40$_x40$_x40$_x40\"\n\n check_result () {\n+    [ -r current ] && rm -f current\n     git-ls-files --stage | sed -e 's/ '\"$_x40\"' / X /' >current &&\n     diff -u expected current\n }\n\n\nSungHyun Nam wrote:\n> Hello,\n> \n> Johannes Schindelin wrote:\n>> On Wed, 24 Jan 2007, SungHyun Nam wrote:\n>>\n>>> First of all, this problem always existed to me. I was lazy to report. \n>>> Please check the failure logs and my GIT build script below. [...] the \n>>> first test failed at 't1000-read-tree-m-3way.sh' always. And in this \n>>> case, 2nd test always succeeded.\n>>>\n>>> * FAIL 57: 5 - must match in !O && A && B && A==B case.\n>>>         rm -f .git/index LL &&\n>>>              cp .orig-A/LL LL &&\n>>>              git-update-index --add LL &&\n>>>              echo extra >>LL &&\n>>>              git-read-tree -m 3fe085e0589de4327971d50e416fc292dd00fbfe\n>>> 997bbc4a0a51e0574168a4f637739380edebe4d7\n>>> 76d47d681d7f1d4fa975334a9a0ba8a6eeea2226 &&\n>>>              check_result\n>> It is not directly apparent what is causing this error. Could you please \n>> change your script to use \"-i -v\" on the tests? I.e. instead of:\n>> \t\n>>> \t    if ! make test\n>> this:\n>>\n>> \t    if ! (cd t; GIT_TEST_OPTS=\"-i -v\" make)\n>>\n>> It should give us a better idea what happened, since we also see the \n>> error messages of the git commands.\n>>\n>> If it is still not apparent what went wrong, there is unfortunately no way \n>> around doing that particular test case manually, as to find out what went \n>> wrong. Since you seem to be the only one who can reproduce this bug, it \n>> boils down to you having to do the leg work.\n> \n> I'm not sure I can believe my system, Windows or CYGWIN.\n> It seems GIT has no problem.\n> \n> Thanks,\n> \n> 2007-01-25\n> =========================================================================\n> * expecting success: rm -fr [NDMALTS][NDMALTSF] Z &&\n>      rm .git/index &&\n>      git-read-tree 997bbc4a0a51e0574168a4f637739380edebe4d7 &&\n>      git-checkout-index -f -u -a &&\n>      git-read-tree -m 3fe085e0589de4327971d50e416fc292dd00fbfe\n> 997bbc4a0a51e0574168a4f637739380edebe4d7\n> 76d47d681d7f1d4fa975334a9a0ba8a6eeea2226 &&\n>      check_result\n> t1000-read-tree-m-3way.sh: line 133: current: Permission denied\n> * FAIL 46: 3-way merge with git-read-tree -m, match H\n>         rm -fr [NDMALTS][NDMALTSF] Z &&\n>              rm .git/index &&\n>              git-read-tree 997bbc4a0a51e0574168a4f637739380edebe4d7 &&\n>              git-checkout-index -f -u -a &&\n>              git-read-tree -m 3fe085e0589de4327971d50e416fc292dd00fbfe\n> 997bbc4a0a51e0574168a4f637739380edebe4d7\n> 76d47d681d7f1d4fa975334a9a0ba8a6eeea2226 &&\n>              check_result\n> make: *** [t1000-read-tree-m-3way.sh] Error 1\n> \n> \n> 2007-01-29\n> =========================================================================\n> * expecting success: rm -f .git/index LL &&\n>      cp .orig-A/LL LL &&\n>      git-update-index --add LL &&\n>      echo extra >>LL &&\n>      git-read-tree -m 3fe085e0589de4327971d50e416fc292dd00fbfe\n> 997bbc4a0a51e0574168a4f637739380edebe4d7\n> 76d47d681d7f1d4fa975334a9a0ba8a6eeea2226 &&\n>      check_result\n> t1000-read-tree-m-3way.sh: line 133: current: Permission denied\n> * FAIL 57: 5 - must match in !O && A && B && A==B case.\n>         rm -f .git/index LL &&\n>              cp .orig-A/LL LL &&\n>              git-update-index --add LL &&\n>              echo extra >>LL &&\n>              git-read-tree -m 3fe085e0589de4327971d50e416fc292dd00fbfe\n> 997bbc4a0a51e0574168a4f637739380edebe4d7\n> 76d47d681d7f1d4fa975334a9a0ba8a6eeea2226 &&\n>              check_result\n> make: *** [t1000-read-tree-m-3way.sh] Error 1\n"},{"id":"34667","messageId":"Pine.LNX.4.63.0702150236590.22628@wbgn013.biozentrum.uni-wuerzburg.de","threadId":"6496","inReplyTo":"45D3AF9B.40205@gmail.com","subject":"Re: GIT+CYGWIN annoying test failure","fromName":"Johannes Schindelin","fromEmail":"johannes.schindelin@gmx.de","sentAt":"2007-02-15T01:37:34Z","receivedAt":"2007-02-15T01:37:34Z","isPatch":false,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"Hi,\n\nOn Thu, 15 Feb 2007, SungHyun Nam wrote:\n\n>  check_result () {\n> +    [ -r current ] && rm -f current\n>      git-ls-files --stage | sed -e 's/ '\"$_x40\"' / X /' >current &&\n>      diff -u expected current\n>  }\n\nAre you having a restrictive umask, or what are the permissions on that \nfile?\n\nCiao,\nDscho\n"},{"id":"34745","messageId":"45D4F4FE.3010405@gmail.com","threadId":"6496","inReplyTo":"Pine.LNX.4.63.0702150236590.22628@wbgn013.biozentrum.uni-wuerzburg.de","subject":"Re: GIT+CYGWIN annoying test failure","fromName":"SungHyun Nam","fromEmail":"goweol@gmail.com","sentAt":"2007-02-16T00:04:14Z","receivedAt":"2007-02-16T00:04:14Z","isPatch":false,"sender":{"key":"goweol@gmail.com","avatar":null},"body":"Hello,\n\nJohannes Schindelin wrote:\n> \n> On Thu, 15 Feb 2007, SungHyun Nam wrote:\n> \n>>  check_result () {\n>> +    [ -r current ] && rm -f current\n>>      git-ls-files --stage | sed -e 's/ '\"$_x40\"' / X /' >current &&\n>>      diff -u expected current\n>>  }\n> \n> Are you having a restrictive umask, or what are the permissions on that \n> file?\n\nThere's no problem with the umask.\n\n$ umask\n0022\n\nI guess there is some race condition in CYGWIN or windows. And my system\ntriggers that condition.\n\nCheck the logic above. I cannot think there is any chance that 'rm -f\ncurrent && echo x >current' is success, but 'echo x >current' is fail?\n\nThanks,\nnamsh\n"},{"id":"34756","messageId":"7vwt2ic2pf.fsf@assigned-by-dhcp.cox.net","threadId":"6496","inReplyTo":"45D4F4FE.3010405@gmail.com","subject":"Re: GIT+CYGWIN annoying test failure","fromName":"Junio C Hamano","fromEmail":"junkio@cox.net","sentAt":"2007-02-16T01:26:36Z","receivedAt":"2007-02-16T01:26:36Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"SungHyun Nam <goweol@gmail.com> writes:\n\n>> On Thu, 15 Feb 2007, SungHyun Nam wrote:\n>> \n>>>  check_result () {\n>>> +    [ -r current ] && rm -f current\n>>>      git-ls-files --stage | sed -e 's/ '\"$_x40\"' / X /' >current &&\n>>>      diff -u expected current\n>>>  }\n\nI would have written:\n\n\tcheck_result () {\n        \trm -f current &&\n                git-ls-files --stage | ... &&\n                diff -u expected current\n\t}\n\nIf the above still makes the tests pass for your environment,\nthat would be good.  I am not very happy about the lack of \"&&\"\nafter \"rm -f current\" in your patch.\n\nIt seems as if 'current' is sometimes writable and sometimes not,\nand when the shell couldn't open it to redirect sed output the\nwhole test fails for you.  That does not sound like a sane,\nreliable filesystem at all, and even if you worked around the\nproblem in that single shell function, we tend to use shell\nredirection to create or overwrite files everywhere (both in\ntests and in the real Porcelain scripts) so that means git is a\ndisaster waiting to happen on your system, which is not good.\n\nWhat I am trying to get at is to find out what is causing the\nproblem first, before working it around.  Then, if we are lucky,\nwe may be able to add a notice in the INSTALL file that says \"It\nwas reported that Filfre virus scanner makes shell redirect in\nCygwin occasionally fail, and both git itself and its testsuite\nmay not work as expected --- please do not use it\", or something\nlike that.\n\n\"Filfre virus scanner\" is totally made up, but I think you get\nthe point.\n"}]}