{"thread":{"id":"5946","subject":"t9100-git-svn-basic.sh fails","startedAt":"2006-10-18T08:59:49Z","lastAt":"2006-10-24T13:09:37Z","messageCount":3,"participants":["Uwe Zeisberger","Eric Wong"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"29087","messageId":"20061018085948.GA27357@cepheus.pub","threadId":"5946","inReplyTo":null,"subject":"t9100-git-svn-basic.sh fails","fromName":"Uwe Zeisberger","fromEmail":"zeisberg@informatik.uni-freiburg.de","sentAt":"2006-10-18T08:59:49Z","receivedAt":"2006-10-18T08:59:49Z","isPatch":false,"sender":{"key":"u.kleine-koenig@pengutronix.de","avatar":"https://gravatar.com/avatar/354b5e3ceb2806a2f1e1e382ac29ddbdad18288654da62b61eb13583a857eee7?d=mp&s=160"},"body":"zeisberg@cepheus:~$ uname -a\nLinux cepheus 2.6.19-rc2-g51018b0a #17 SMP Mon Oct 16 12:51:05 CEST 2006 i686 GNU/Linux\n\nzeisberg@cepheus:~$ dpkg -l subversion libsvn1 libapr1 libaprutil1 libdb4.4\nDesired=Unknown/Install/Remove/Purge/Hold\n| Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed\n|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)\n||/ Name           Version        Description\n+++-==============-==============-============================================\nii  libapr1        1.2.7-6        The Apache Portable Runtime Library\nii  libaprutil1    1.2.7+dfsg-2   The Apache Portable Runtime Utility Library\nii  libdb4.4       4.4.20-3       Berkeley v4.4 Database Libraries [runtime]\nii  libsvn1        1.4.0-5        Shared libraries used by Subversion\nii  subversion     1.4.0-5        Advanced version control system\n\nzeisberg@cepheus:~/gsrc/git$ sh GIT-VERSION-GEN \nGIT_VERSION = 1.4.2.4.g3453\n\n(BTW, why that:\nzeisberg@cepheus:~/gsrc/git$ grep ^DEF_VER GIT-VERSION-GEN \nDEF_VER=v1.4.3.GIT\n)\n\nzeisberg@cepheus:~/gsrc/git/t$ sh t9100-git-svn-basic.sh \nPerl SVN libraries not found, tests requiring those will be skipped\ndefine NO_SVN_TESTS to skip git-svn tests\n*   ok 1: initialize git-svn\n*   ok 2: import an SVN revision into git\n*   ok 3: checkout from svn\n*   ok 4: try a deep --rmdir with a commit\n*   ok 5: detect node change from file to directory #1\n*   ok 6: detect node change from directory to file #1\n*   ok 7: detect node change from file to directory #2\n*   ok 8: detect node change from directory to file #2\n*   ok 9: remove executable bit from a file\n*   ok 10: add executable bit back file\n*   ok 11: executable file becomes a symlink to bar/zzz (file)\n*   ok 12: new symlink is added to a file that was also just made executable\nFATAL: Unexpected exit with code 9\n\nThere is a warning about installing SVN Perl libraries to get fewer\nbugs.  Is that one of those?  Is that test failure already known?\n\nThe output of the verbose run is attached.\n\nBest regards\nUwe\n\n-- \nUwe Zeisberger\n\nhttp://www.google.com/search?q=i+squared\n\n\nPerl SVN libraries not found, tests requiring those will be skipped\ndefine NO_SVN_TESTS to skip git-svn tests\n* expecting success: git-svn init file:///home/zeisberg/gsrc/git/t/trash/svnrepo/test-git-svn\n*   ok 1: initialize git-svn\n\n* expecting success: git-svn fetch\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/tree/foo.link\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/tree/foo\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/tree/bar\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/tree/bar/zzz\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/tree/exec.sh\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/tree/dir\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/tree/dir/a\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/tree/dir/a/b\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/tree/dir/a/b/c\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/tree/dir/a/b/c/d\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/tree/dir/a/b/c/d/e\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/tree/dir/a/b/c/d/e/file\nChecked out revision 1.\nr1 = efbb057bfd612e3cd1890112efd96b4a2e397d89\n*   ok 2: import an SVN revision into git\n\n* expecting success: svn co file:///home/zeisberg/gsrc/git/t/trash/svnrepo/test-git-svn /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/foo.link\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/foo\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/bar\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/bar/zzz\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/exec.sh\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/dir\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/dir/a\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/dir/a/b\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/dir/a/b/c\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/dir/a/b/c/d\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/dir/a/b/c/d/e\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/dir/a/b/c/d/e/file\nChecked out revision 1.\n*   ok 3: checkout from svn\n\n* expecting success: git-svn commit --find-copies-harder --rmdir remotes/git-svn..mybranch &&\n     svn up /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree &&\n     test -d /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/dir && test ! -d /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/dir/a\ndiff-tree efbb057bfd612e3cd1890112efd96b4a2e397d89 78d4a6294c9d0dcac49c38ece1c1f20c74edcc68\nA         dir/file\nA         file\nD         dir/a/b/c/d/e/file\nD         dir/a/b/c/d/e/file\nD         dir/a/b/c/d/e\nD         dir/a/b/c/d/e/file\nD         dir/a/b/c/d/e\nD         dir/a/b/c/d\nD         dir/a/b/c/d/e/file\nD         dir/a/b/c/d/e\nD         dir/a/b/c/d\nD         dir/a/b/c\nD         dir/a/b/c/d/e/file\nD         dir/a/b/c/d/e\nD         dir/a/b/c/d\nD         dir/a/b/c\nD         dir/a/b\nD         dir/a/b/c/d/e/file\nD         dir/a/b/c/d/e\nD         dir/a/b/c/d\nD         dir/a/b/c\nD         dir/a/b\nD         dir/a\nCommitting 78d4a6294c9d0dcac49c38ece1c1f20c74edcc68: try a deep --rmdir with a commit\nAt revision 2.\nr2 = f303d50d91b0f8353e1c8950b04b74ad1da89074\nDone committing 1 revisions to SVN\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/file\nD    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/dir/a\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/dir/file\nUpdated to revision 2.\n*   ok 4: try a deep --rmdir with a commit\n\n* expecting failure: git-svn commit --find-copies-harder --rmdir remotes/git-svn..mybranch\ndiff-tree f303d50d91b0f8353e1c8950b04b74ad1da89074 c3711a70e5dfac068e95b43b0778dce17d3f3c53\n*   ok 5: detect node change from file to directory #1\n\n* expecting failure: git-svn commit --find-copies-harder --rmdir remotes/git-svn..mybranch2\ndiff-tree f303d50d91b0f8353e1c8950b04b74ad1da89074 5eba97b4b68c76437c6a3dfd8c1712c235e6dbf1\n*   ok 6: detect node change from directory to file #1\n\n* expecting failure: git-svn commit --find-copies-harder --rmdir remotes/git-svn..mybranch3\ndiff-tree f303d50d91b0f8353e1c8950b04b74ad1da89074 db5f4bce8265b9807ef76a92717af6a846c941dd\n*   ok 7: detect node change from file to directory #2\n\n* expecting failure: git-svn commit --find-copies-harder --rmdir remotes/git-svn..mybranch4\ndiff-tree f303d50d91b0f8353e1c8950b04b74ad1da89074 97060150727530f2fa4b34e13ca83566501a0274\n*   ok 8: detect node change from directory to file #2\n\n* expecting success: git-svn commit --find-copies-harder --rmdir remotes/git-svn..mybranch5 &&\n     svn up /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree &&\n     test ! -x /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/exec.sh\ndiff-tree f303d50d91b0f8353e1c8950b04b74ad1da89074 f56cfd05f6959633698abb413a76e3879568fe6a\nproperty 'svn:executable' deleted from 'exec.sh'.\nCommitting f56cfd05f6959633698abb413a76e3879568fe6a: remove executable bit from a file\nAt revision 3.\nr3 = 150272d4f56833af23385f41289fa133fef9061d\nDone committing 1 revisions to SVN\n U   /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/exec.sh\nUpdated to revision 3.\n*   ok 9: remove executable bit from a file\n\n* expecting success: git-svn commit --find-copies-harder --rmdir remotes/git-svn..mybranch5 &&\n     svn up /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree &&\n     test -x /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/exec.sh\ndiff-tree 150272d4f56833af23385f41289fa133fef9061d 835354f30dee357f2292e0d8457534d3c36a9ee0\nproperty 'svn:executable' set on 'exec.sh'\nCommitting 835354f30dee357f2292e0d8457534d3c36a9ee0: add executable bit back file\nAt revision 4.\nr4 = 5ff396d7d67dae86e0d031f10971bbd01c7dbc7a\nDone committing 1 revisions to SVN\n U   /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/exec.sh\nUpdated to revision 4.\n*   ok 10: add executable bit back file\n\n* expecting success: git-svn commit --find-copies-harder --rmdir remotes/git-svn..mybranch5 &&\n\t     svn up /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree &&\n\t     test -L /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/exec.sh\ndiff-tree 5ff396d7d67dae86e0d031f10971bbd01c7dbc7a aecafe170fda3a28cffa283084038a78e0b9453a\nD         exec.sh\nA         exec.sh\nCommitting aecafe170fda3a28cffa283084038a78e0b9453a: executable file becomes a symlink to bar/zzz (file)\nAt revision 5.\nr5 = b11753149d160cd083342368a6a817b67ebe5343\nDone committing 1 revisions to SVN\nD    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/exec.sh\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/exec.sh\nUpdated to revision 5.\n*   ok 11: executable file becomes a symlink to bar/zzz (file)\n\n* expecting success: git-svn commit --find-copies-harder --rmdir remotes/git-svn..mybranch5 &&\n\t     svn up /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree &&\n\t     test -x /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/bar/zzz &&\n\t     test -L /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/exec-2.sh\ndiff-tree b11753149d160cd083342368a6a817b67ebe5343 e68439578ed56b3c33137a4f1fb7f9f74a4c5abf\nA         exec-2.sh\nCommitting e68439578ed56b3c33137a4f1fb7f9f74a4c5abf: new symlink is added to a file that was also just made executable\nAt revision 6.\nr6 = 601ae0df2203d0b8c81774101d426b4b009b0f59\nDone committing 1 revisions to SVN\nA    /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/exec-2.sh\nUpdated to revision 6.\n*   ok 12: new symlink is added to a file that was also just made executable\n\n* expecting success: git-svn commit --find-copies-harder --rmdir remotes/git-svn..mybranch5 &&\n\t     svn up /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree &&\n\t     test -f /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/exec-2.sh &&\n\t     test ! -L /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/exec-2.sh &&\n\t     diff -u help /home/zeisberg/gsrc/git/t/trash/.git/svn/git-svn/svn-tree/exec-2.sh\ndiff-tree 601ae0df2203d0b8c81774101d426b4b009b0f59 69fa6b2e91eb2b7af80e86b4af01d6c539f0aa21\nD         exec-2.sh\nA         exec-2.sh\nFATAL: Unexpected exit with code 9\n"},{"id":"29839","messageId":"20061024095037.GA15936@soma","threadId":"5946","inReplyTo":"20061018085948.GA27357@cepheus.pub","subject":"[PATCH] git-svn: fix symlink-to-file changes when using command-line svn 1.4.0","fromName":"Eric Wong","fromEmail":"normalperson@yhbt.net","sentAt":"2006-10-24T09:50:37Z","receivedAt":"2006-10-24T09:50:37Z","isPatch":true,"sender":{"key":"e@80x24.org","avatar":null},"body":"I incorrectly thought this was hopelessly broken in svn 1.4.0,\nbut now it's just broken in that the old method didn't work.  It\nlooks like svn propdel and svn propset must be used now and the\n(imho) more obvious svn rm --force && svn add no longer works.\n\nmake -C t full-svn-test should now work\n\nSigned-off-by: Eric Wong <normalperson@yhbt.net>\n---\n git-svn.perl |    9 ++++++---\n 1 files changed, 6 insertions(+), 3 deletions(-)\n\ndiff --git a/git-svn.perl b/git-svn.perl\nindex 54d2356..37ecc51 100755\n--- a/git-svn.perl\n+++ b/git-svn.perl\n@@ -1501,10 +1501,13 @@ sub svn_checkout_tree {\n \t\t\tapply_mod_line_blob($m);\n \t\t\tsvn_check_prop_executable($m);\n \t\t} elsif ($m->{chg} eq 'T') {\n-\t\t\tsys(qw(svn rm --force),$m->{file_b});\n-\t\t\tapply_mod_line_blob($m);\n-\t\t\tsys(qw(svn add), $m->{file_b});\n \t\t\tsvn_check_prop_executable($m);\n+\t\t\tapply_mod_line_blob($m);\n+\t\t\tif ($m->{mode_a} =~ /^120/ && $m->{mode_b} !~ /^120/) {\n+\t\t\t\tsys(qw(svn propdel svn:special), $m->{file_b});\n+\t\t\t} else {\n+\t\t\t\tsys(qw(svn propset svn:special *),$m->{file_b});\n+\t\t\t}\n \t\t} elsif ($m->{chg} eq 'A') {\n \t\t\tsvn_ensure_parent_path( $m->{file_b} );\n \t\t\tapply_mod_line_blob($m);\n-- \n1.4.3.2.g125940\n"},{"id":"29858","messageId":"20061024130937.GA16617@cepheus.pub","threadId":"5946","inReplyTo":"20061024095037.GA15936@soma","subject":"Re: [PATCH] git-svn: fix symlink-to-file changes when using command-line svn 1.4.0","fromName":"Uwe Zeisberger","fromEmail":"zeisberg@informatik.uni-freiburg.de","sentAt":"2006-10-24T13:09:37Z","receivedAt":"2006-10-24T13:09:37Z","isPatch":true,"sender":{"key":"u.kleine-koenig@pengutronix.de","avatar":"https://gravatar.com/avatar/354b5e3ceb2806a2f1e1e382ac29ddbdad18288654da62b61eb13583a857eee7?d=mp&s=160"},"body":"Eric Wong wrote:\n> I incorrectly thought this was hopelessly broken in svn 1.4.0,\n> but now it's just broken in that the old method didn't work.  It\n> looks like svn propdel and svn propset must be used now and the\n> (imho) more obvious svn rm --force && svn add no longer works.\n> \n> make -C t full-svn-test should now work\nworks for me, so ...\n \n> Signed-off-by: Eric Wong <normalperson@yhbt.net>\nAcked-by: Uwe Zeisberger <zeisberg@informatik.uni-freiburg.de>\n\nBTW: make -C t full-svn-test ran the test suite several times, which is\nfine.  But if I read correctly, half of the runs are superfluous if the\nperl SVN libraries are not installed.  Probably it's not worth fixing...\n\nBest regards\nUwe\n\n-- \nUwe Zeisberger\n\nhttp://www.google.com/search?q=0+degree+Celsius+in+kelvin\n"}]}