{"thread":{"id":"10238","subject":"[PATCH] Fixing path quoting issues","startedAt":"2007-10-10T21:22:34Z","lastAt":"2007-10-10T21:22:34Z","messageCount":1,"participants":["maillist@steelskies.com"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"55412","messageId":"11920513543478-git-send-email-maillist@steelskies.com","threadId":"10238","inReplyTo":null,"subject":"[PATCH] Fixing path quoting issues","fromName":"","fromEmail":"maillist@steelskies.com","sentAt":"2007-10-10T21:22:34Z","receivedAt":"2007-10-10T21:22:34Z","isPatch":true,"sender":{"key":"jon.delstrother@bestbefore.tv","avatar":"https://gravatar.com/avatar/754e21ab701c00e2d21fc261187254c34b2a1c0b959d9ee5be1a295990be3081?d=mp&s=160"},"body":"From: Jonathan del Strother <jon.delStrother@bestbefore.tv>\n\ngit-rebase and a number of tests didn't properly quote paths, leading to problems when run from a path with a space in.\n\nSigned-off-by: Jonathan del Strother <jon.delStrother@bestbefore.tv>\n---\n git-rebase.sh                            |   26 +++++-----\n t/t1020-subdirectory.sh                  |   22 ++++----\n t/t3050-subprojects-fetch.sh             |    2 +-\n t/t3404-rebase-interactive.sh            |    2 +-\n t/t5500-fetch-pack.sh                    |    2 +-\n t/t5700-clone-reference.sh               |    2 +-\n t/t7003-filter-branch.sh                 |    2 +-\n t/t7501-commit.sh                        |   74 +++++++++++++++---------------\n t/t9100-git-svn-basic.sh                 |   18 ++++----\n t/t9101-git-svn-props.sh                 |    6 +-\n t/t9102-git-svn-deep-rmdir.sh            |    6 +-\n t/t9104-git-svn-follow-parent.sh         |   50 ++++++++++----------\n t/t9105-git-svn-commit-diff.sh           |   10 ++--\n t/t9106-git-svn-commit-diff-clobber.sh   |   14 +++---\n t/t9107-git-svn-migrate.sh               |   40 ++++++++--------\n t/t9108-git-svn-glob.sh                  |    8 ++--\n t/t9110-git-svn-use-svm-props.sh         |    8 ++--\n t/t9111-git-svn-use-svnsync-props.sh     |    8 ++--\n t/t9112-git-svn-md5less-file.sh          |    4 +-\n t/t9113-git-svn-dcommit-new-file.sh      |    6 +-\n t/t9114-git-svn-dcommit-merge.sh         |    4 +-\n t/t9115-git-svn-dcommit-funky-renames.sh |    4 +-\n t/t9116-git-svn-log.sh                   |    4 +-\n t/test-lib.sh                            |    2 +-\n 24 files changed, 162 insertions(+), 162 deletions(-)\n\ndiff --git a/git-rebase.sh b/git-rebase.sh\nindex 1583402..b48397e 100755\n--- a/git-rebase.sh\n+++ b/git-rebase.sh\n@@ -59,7 +59,7 @@ continue_merge () {\n \t\tdie \"$RESOLVEMSG\"\n \tfi\n \n-\tcmt=`cat $dotest/current`\n+\tcmt=`cat \"$dotest/current\"`\n \tif ! git diff-index --quiet HEAD\n \tthen\n \t\tif ! git-commit -C \"$cmt\"\n@@ -84,14 +84,14 @@ continue_merge () {\n }\n \n call_merge () {\n-\tcmt=\"$(cat $dotest/cmt.$1)\"\n+\tcmt=\"$(cat \"$dotest/cmt.$1\")\"\n \techo \"$cmt\" > \"$dotest/current\"\n \thd=$(git rev-parse --verify HEAD)\n \tcmt_name=$(git symbolic-ref HEAD)\n-\tmsgnum=$(cat $dotest/msgnum)\n-\tend=$(cat $dotest/end)\n+\tmsgnum=$(cat \"$dotest/msgnum\")\n+\tend=$(cat \"$dotest/end\")\n \teval GITHEAD_$cmt='\"${cmt_name##refs/heads/}~$(($end - $msgnum))\"'\n-\teval GITHEAD_$hd='\"$(cat $dotest/onto_name)\"'\n+\teval GITHEAD_$hd='\"$(cat \\\"$dotest/onto_name\\\")\"'\n \texport GITHEAD_$cmt GITHEAD_$hd\n \tgit-merge-$strategy \"$cmt^\" -- \"$hd\" \"$cmt\"\n \trv=$?\n@@ -140,10 +140,10 @@ do\n \t\t}\n \t\tif test -d \"$dotest\"\n \t\tthen\n-\t\t\tprev_head=\"`cat $dotest/prev_head`\"\n-\t\t\tend=\"`cat $dotest/end`\"\n-\t\t\tmsgnum=\"`cat $dotest/msgnum`\"\n-\t\t\tonto=\"`cat $dotest/onto`\"\n+\t\t\tprev_head=\"`cat \\\"$dotest/prev_head\\\"`\"\n+\t\t\tend=\"`cat \\\"$dotest/end\\\"`\"\n+\t\t\tmsgnum=\"`cat \\\"$dotest/msgnum\\\"`\"\n+\t\t\tonto=\"`cat \\\"$dotest/onto\\\"`\"\n \t\t\tcontinue_merge\n \t\t\twhile test \"$msgnum\" -le \"$end\"\n \t\t\tdo\n@@ -160,11 +160,11 @@ do\n \t\tif test -d \"$dotest\"\n \t\tthen\n \t\t\tgit rerere clear\n-\t\t\tprev_head=\"`cat $dotest/prev_head`\"\n-\t\t\tend=\"`cat $dotest/end`\"\n-\t\t\tmsgnum=\"`cat $dotest/msgnum`\"\n+\t\t\tprev_head=\"`cat \\\"$dotest/prev_head\\\"`\"\n+\t\t\tend=\"`cat \\\"$dotest/end\\\"`\"\n+\t\t\tmsgnum=\"`cat \\\"$dotest/msgnum\\\"`\"\n \t\t\tmsgnum=$(($msgnum + 1))\n-\t\t\tonto=\"`cat $dotest/onto`\"\n+\t\t\tonto=\"`cat \\\"$dotest/onto\\\"`\"\n \t\t\twhile test \"$msgnum\" -le \"$end\"\n \t\t\tdo\n \t\t\t\tcall_merge \"$msgnum\"\ndiff --git a/t/t1020-subdirectory.sh b/t/t1020-subdirectory.sh\nindex b9cef34..5ed7fa4 100755\n--- a/t/t1020-subdirectory.sh\n+++ b/t/t1020-subdirectory.sh\n@@ -21,7 +21,7 @@ LF='\n '\n \n test_expect_success 'update-index and ls-files' '\n-\tcd $HERE &&\n+\tcd \"$HERE\" &&\n \tgit update-index --add one &&\n \tcase \"`git ls-files`\" in\n \tone) echo ok one ;;\n@@ -41,7 +41,7 @@ test_expect_success 'update-index and ls-files' '\n '\n \n test_expect_success 'cat-file' '\n-\tcd $HERE &&\n+\tcd \"$HERE\" &&\n \ttwo=`git ls-files -s dir/two` &&\n \ttwo=`expr \"$two\" : \"[0-7]* \\\\([0-9a-f]*\\\\)\"` &&\n \techo \"$two\" &&\n@@ -54,7 +54,7 @@ test_expect_success 'cat-file' '\n rm -f actual dir/actual\n \n test_expect_success 'diff-files' '\n-\tcd $HERE &&\n+\tcd \"$HERE\" &&\n \techo a >>one &&\n \techo d >>dir/two &&\n \tcase \"`git diff-files --name-only`\" in\n@@ -74,7 +74,7 @@ test_expect_success 'diff-files' '\n '\n \n test_expect_success 'write-tree' '\n-\tcd $HERE &&\n+\tcd \"$HERE\" &&\n \ttop=`git write-tree` &&\n \techo $top &&\n \tcd dir &&\n@@ -84,7 +84,7 @@ test_expect_success 'write-tree' '\n '\n \n test_expect_success 'checkout-index' '\n-\tcd $HERE &&\n+\tcd \"$HERE\" &&\n \tgit checkout-index -f -u one &&\n \tcmp one original.one &&\n \tcd dir &&\n@@ -93,7 +93,7 @@ test_expect_success 'checkout-index' '\n '\n \n test_expect_success 'read-tree' '\n-\tcd $HERE &&\n+\tcd \"$HERE\" &&\n \trm -f one dir/two &&\n \ttree=`git write-tree` &&\n \tgit read-tree --reset -u \"$tree\" &&\n@@ -107,27 +107,27 @@ test_expect_success 'read-tree' '\n '\n \n test_expect_success 'no file/rev ambiguity check inside .git' '\n-\tcd $HERE &&\n+\tcd \"$HERE\" &&\n \tgit commit -a -m 1 &&\n-\tcd $HERE/.git &&\n+\tcd \"$HERE/.git\" &&\n \tgit show -s HEAD\n '\n \n test_expect_success 'no file/rev ambiguity check inside a bare repo' '\n-\tcd $HERE &&\n+\tcd \"$HERE\" &&\n \tgit clone -s --bare .git foo.git &&\n \tcd foo.git && GIT_DIR=. git show -s HEAD\n '\n \n # This still does not work as it should...\n : test_expect_success 'no file/rev ambiguity check inside a bare repo' '\n-\tcd $HERE &&\n+\tcd \"$HERE\" &&\n \tgit clone -s --bare .git foo.git &&\n \tcd foo.git && git show -s HEAD\n '\n \n test_expect_success 'detection should not be fooled by a symlink' '\n-\tcd $HERE &&\n+\tcd \"$HERE\" &&\n \trm -fr foo.git &&\n \tgit clone -s .git another &&\n \tln -s another yetanother &&\ndiff --git a/t/t3050-subprojects-fetch.sh b/t/t3050-subprojects-fetch.sh\nindex 34f26a8..4b74cc6 100755\n--- a/t/t3050-subprojects-fetch.sh\n+++ b/t/t3050-subprojects-fetch.sh\n@@ -20,7 +20,7 @@ test_expect_success setup '\n '\n \n test_expect_success clone '\n-\tgit clone file://`pwd`/.git cloned &&\n+\tgit clone \"file://`pwd`/.git\" cloned &&\n \t(git rev-parse HEAD; git ls-files -s) >expected &&\n \t(\n \t\tcd cloned &&\ndiff --git a/t/t3404-rebase-interactive.sh b/t/t3404-rebase-interactive.sh\nindex 1113904..f321787 100755\n--- a/t/t3404-rebase-interactive.sh\n+++ b/t/t3404-rebase-interactive.sh\n@@ -92,7 +92,7 @@ done\n EOF\n \n chmod a+x fake-editor.sh\n-VISUAL=\"$(pwd)/fake-editor.sh\"\n+VISUAL=\"'$(pwd)/fake-editor.sh'\"\n export VISUAL\n \n test_expect_success 'no changes are a nop' '\ndiff --git a/t/t5500-fetch-pack.sh b/t/t5500-fetch-pack.sh\nindex 7b6798d..5489ffe 100755\n--- a/t/t5500-fetch-pack.sh\n+++ b/t/t5500-fetch-pack.sh\n@@ -129,7 +129,7 @@ pull_to_client 2nd \"B\" $((64*3))\n \n pull_to_client 3rd \"A\" $((1*3)) # old fails\n \n-test_expect_success \"clone shallow\" \"git-clone --depth 2 file://`pwd`/. shallow\"\n+test_expect_success \"clone shallow\" \"git-clone --depth 2 \\\"file://`pwd`/.\\\" shallow\"\n \n (cd shallow; git count-objects -v) > count.shallow\n \ndiff --git a/t/t5700-clone-reference.sh b/t/t5700-clone-reference.sh\nindex 4e93aaa..8bb34f9 100755\n--- a/t/t5700-clone-reference.sh\n+++ b/t/t5700-clone-reference.sh\n@@ -51,7 +51,7 @@ diff expected current'\n cd \"$base_dir\"\n \n test_expect_success 'cloning with reference (no -l -s)' \\\n-'git clone --reference B file://`pwd`/A D'\n+'git clone --reference B \"file://`pwd`/A\" D'\n \n cd \"$base_dir\"\n \ndiff --git a/t/t7003-filter-branch.sh b/t/t7003-filter-branch.sh\nindex e935b20..1ab5392 100755\n--- a/t/t7003-filter-branch.sh\n+++ b/t/t7003-filter-branch.sh\n@@ -107,7 +107,7 @@ test_expect_success 'use index-filter to move into a subdirectory' '\n \t\t \"git ls-files -s | sed \\\"s-\\\\t-&newsubdir/-\\\" |\n \t          GIT_INDEX_FILE=\\$GIT_INDEX_FILE.new \\\n \t\t\tgit update-index --index-info &&\n-\t\t  mv \\$GIT_INDEX_FILE.new \\$GIT_INDEX_FILE\" directorymoved &&\n+\t\t  mv \\\"\\$GIT_INDEX_FILE.new\\\" \\\"\\$GIT_INDEX_FILE\\\"\" directorymoved &&\n \ttest -z \"$(git diff HEAD directorymoved:newsubdir)\"'\n \n test_expect_success 'stops when msg filter fails' '\ndiff --git a/t/t7501-commit.sh b/t/t7501-commit.sh\nindex b151b51..f3d0ab9 100644\n--- a/t/t7501-commit.sh\n+++ b/t/t7501-commit.sh\n@@ -69,7 +69,7 @@ test_expect_success \\\n \n cat >editor <<\\EOF\n #!/bin/sh\n-sed -i -e \"s/a file/an amend commit/g\" $1\n+sed -i -e \"s/a file/an amend commit/g\" \"$1\"\n EOF\n chmod 755 editor\n \n@@ -80,40 +80,40 @@ test_expect_success \\\n test_expect_failure \\\n \t\"passing -m and -F\" \\\n \t\"echo 'enough with the bongos' >file && \\\n-\t git-commit -F msg -m amending .\"\n+\tgit-commit -F msg -m amending .\"\n \n test_expect_success \\\n-\t\"using message from other commit\" \\\n-\t\"git-commit -C HEAD^ .\"\n+\t \"using message from other commit\" \\\n+\t \"git-commit -C HEAD^ .\"\n \n cat >editor <<\\EOF\n #!/bin/sh\n-sed -i -e \"s/amend/older/g\" $1\n+sed -i -e \"s/amend/older/g\" \"$1\"\n EOF\n chmod 755 editor\n \n test_expect_success \\\n-\t\"editing message from other commit\" \\\n-\t\"echo 'hula hula' >file && \\\n-\t VISUAL=./editor git-commit -c HEAD^ -a\"\n+\t \"editing message from other commit\" \\\n+\t \"echo 'hula hula' >file && \\\n+\t  VISUAL=./editor git-commit -c HEAD^ -a\"\n \n test_expect_success \\\n-\t\"message from stdin\" \\\n-\t\"echo 'silly new contents' >file && \\\n-\t echo commit message from stdin | git-commit -F - -a\"\n+\t \"message from stdin\" \\\n+\t \"echo 'silly new contents' >file && \\\n+\t  echo commit message from stdin | git-commit -F - -a\"\n \n test_expect_success \\\n-\t\"overriding author from command line\" \\\n-\t\"echo 'gak' >file && \\\n-\t git-commit -m 'author' --author 'Rubber Duck <rduck@convoy.org>' -a\"\n+\t \"overriding author from command line\" \\\n+\t \"echo 'gak' >file && \\\n+\t  git-commit -m 'author' --author 'Rubber Duck <rduck@convoy.org>' -a\"\n \n test_expect_success \\\n-\t\"interactive add\" \\\n-\t\"echo 7 | git-commit --interactive | grep 'What now'\"\n+\t \"interactive add\" \\\n+\t \"echo 7 | git-commit --interactive | grep 'What now'\"\n \n test_expect_success \\\n-\t\"showing committed revisions\" \\\n-\t\"git-rev-list HEAD >current\"\n+\t \"showing committed revisions\" \\\n+\t \"git-rev-list HEAD >current\"\n \n # We could just check the head sha1, but checking each commit makes it\n # easier to isolate bugs.\n@@ -128,38 +128,38 @@ d381ac431806e53f3dd7ac2f1ae0534f36d738b9\n EOF\n \n test_expect_success \\\n-    'validate git-rev-list output.' \\\n-    'diff current expected'\n+\t'validate git-rev-list output.' \\\n+\t'diff current expected'\n \n test_expect_success 'partial commit that involves removal (1)' '\n \n-\tgit rm --cached file &&\n-\tmv file elif &&\n-\tgit add elif &&\n-\tgit commit -m \"Partial: add elif\" elif &&\n-\tgit diff-tree --name-status HEAD^ HEAD >current &&\n-\techo \"A\telif\" >expected &&\n-\tdiff expected current\n+\t git rm --cached file &&\n+\t mv file elif &&\n+\t git add elif &&\n+\t git commit -m \"Partial: add elif\" elif &&\n+\t git diff-tree --name-status HEAD^ HEAD >current &&\n+\t echo \"A elif\" >expected &&\n+\t diff -b expected current\n \n '\n \n test_expect_success 'partial commit that involves removal (2)' '\n \n-\tgit commit -m \"Partial: remove file\" file &&\n-\tgit diff-tree --name-status HEAD^ HEAD >current &&\n-\techo \"D\tfile\" >expected &&\n-\tdiff expected current\n+\t git commit -m \"Partial: remove file\" file &&\n+\t git diff-tree --name-status HEAD^ HEAD >current &&\n+\t echo \"D file\" >expected &&\n+\t diff -b expected current\n \n '\n \n test_expect_success 'partial commit that involves removal (3)' '\n \n-\tgit rm --cached elif &&\n-\techo elif >elif &&\n-\tgit commit -m \"Partial: modify elif\" elif &&\n-\tgit diff-tree --name-status HEAD^ HEAD >current &&\n-\techo \"M\telif\" >expected &&\n-\tdiff expected current\n+\t git rm --cached elif &&\n+\t echo elif >elif &&\n+\t git commit -m \"Partial: modify elif\" elif &&\n+\t git diff-tree --name-status HEAD^ HEAD >current &&\n+\t echo \"M elif\" >expected &&\n+\t diff -b expected current\n \n '\n \ndiff --git a/t/t9100-git-svn-basic.sh b/t/t9100-git-svn-basic.sh\nindex 614cf50..c3585da 100755\n--- a/t/t9100-git-svn-basic.sh\n+++ b/t/t9100-git-svn-basic.sh\n@@ -31,16 +31,16 @@ test_expect_success \\\n \techo 'zzz' > bar/zzz &&\n \techo '#!/bin/sh' > exec.sh &&\n \tchmod +x exec.sh &&\n-\tsvn import -m 'import for git-svn' . $svnrepo >/dev/null &&\n+\tsvn import -m 'import for git-svn' . '$svnrepo' >/dev/null &&\n \tcd .. &&\n \trm -rf import &&\n-\tgit-svn init $svnrepo\"\n+\tgit-svn init '$svnrepo'\"\n \n test_expect_success \\\n     'import an SVN revision into git' \\\n     'git-svn fetch'\n \n-test_expect_success \"checkout from svn\" \"svn co $svnrepo '$SVN_TREE'\"\n+test_expect_success \"checkout from svn\" \"svn co '$svnrepo' '$SVN_TREE'\"\n \n name='try a deep --rmdir with a commit'\n test_expect_success \"$name\" \"\n@@ -169,7 +169,7 @@ test_expect_success \"$name\" \"\n \tsvn up '$SVN_TREE' &&\n \ttest -f '$SVN_TREE'/exec-2.sh &&\n \ttest ! -L '$SVN_TREE'/exec-2.sh &&\n-\tgit diff help $SVN_TREE/exec-2.sh\"\n+\tgit diff help '$SVN_TREE/exec-2.sh'\"\n \n if test \"$have_utf8\" = t\n then\n@@ -190,7 +190,7 @@ name='test fetch functionality (svn => git) with alternate GIT_SVN_ID'\n GIT_SVN_ID=alt\n export GIT_SVN_ID\n test_expect_success \"$name\" \\\n-    \"git-svn init $svnrepo && git-svn fetch &&\n+    \"git-svn init '$svnrepo' && git-svn fetch &&\n      git rev-list --pretty=raw remotes/git-svn | grep ^tree | uniq > a &&\n      git rev-list --pretty=raw remotes/alt | grep ^tree | uniq > b &&\n      git diff a b\"\n@@ -220,16 +220,16 @@ test_expect_failure 'exit if remote refs are ambigious' \"\n         \"\n \n test_expect_failure 'exit if init-ing a would clobber a URL' \"\n-        svnadmin create ${PWD}/svnrepo2 &&\n-        svn mkdir -m 'mkdir bar' ${svnrepo}2/bar &&\n+        svnadmin create '${PWD}/svnrepo2' &&\n+        svn mkdir -m 'mkdir bar' '${svnrepo}2/bar' &&\n         git config --unset svn-remote.svn.fetch \\\n                                 '^bar:refs/remotes/git-svn$' &&\n-        git-svn init ${svnrepo}2/bar\n+        git-svn init '${svnrepo}2/bar'\n         \"\n \n test_expect_success \\\n   'init allows us to connect to another directory in the same repo' \"\n-        git-svn init --minimize-url -i bar $svnrepo/bar &&\n+        git-svn init --minimize-url -i bar '$svnrepo/bar' &&\n         git config --get svn-remote.svn.fetch \\\n                               '^bar:refs/remotes/bar$' &&\n         git config --get svn-remote.svn.fetch \\\ndiff --git a/t/t9101-git-svn-props.sh b/t/t9101-git-svn-props.sh\nindex 5aac644..a1c85e0 100755\n--- a/t/t9101-git-svn-props.sh\n+++ b/t/t9101-git-svn-props.sh\n@@ -52,7 +52,7 @@ EOF\n cd ..\n \n rm -rf import\n-test_expect_success 'checkout working copy from svn' \"svn co $svnrepo test_wc\"\n+test_expect_success 'checkout working copy from svn' \"svn co '$svnrepo' test_wc\"\n test_expect_success 'setup some commits to svn' \\\n \t'cd test_wc &&\n \t\techo Greetings >> kw.c &&\n@@ -66,7 +66,7 @@ test_expect_success 'setup some commits to svn' \\\n \t\tsvn commit -m \"Propset Id\" &&\n \tcd ..'\n \n-test_expect_success 'initialize git-svn' \"git-svn init $svnrepo\"\n+test_expect_success 'initialize git-svn' \"git-svn init '$svnrepo'\"\n test_expect_success 'fetch revisions from svn' 'git-svn fetch'\n \n name='test svn:keywords ignoring'\n@@ -92,7 +92,7 @@ test_expect_success \"propset CR on crlf files\" \\\n test_expect_success 'fetch and pull latest from svn and checkout a new wc' \\\n \t\"git-svn fetch &&\n \t git pull . remotes/git-svn &&\n-\t svn co $svnrepo new_wc\"\n+\t svn co '$svnrepo' new_wc\"\n \n for i in crlf ne_crlf lf ne_lf cr ne_cr empty_cr empty_lf empty empty_crlf\n do\ndiff --git a/t/t9102-git-svn-deep-rmdir.sh b/t/t9102-git-svn-deep-rmdir.sh\nindex 4e08083..99c8840 100755\n--- a/t/t9102-git-svn-deep-rmdir.sh\n+++ b/t/t9102-git-svn-deep-rmdir.sh\n@@ -9,12 +9,12 @@ test_expect_success 'initialize repo' \"\n \tmkdir -p deeply/nested/directory/number/2 &&\n \techo foo > deeply/nested/directory/number/1/file &&\n \techo foo > deeply/nested/directory/number/2/another &&\n-\tsvn import -m 'import for git-svn' . $svnrepo &&\n+\tsvn import -m 'import for git-svn' . '$svnrepo' &&\n \tcd ..\n \t\"\n \n test_expect_success 'mirror via git-svn' \"\n-\tgit-svn init $svnrepo &&\n+\tgit-svn init '$svnrepo' &&\n \tgit-svn fetch &&\n \tgit checkout -f -b test-rmdir remotes/git-svn\n \t\"\n@@ -23,7 +23,7 @@ test_expect_success 'Try a commit on rmdir' \"\n \tgit rm -f deeply/nested/directory/number/2/another &&\n \tgit commit -a -m 'remove another' &&\n \tgit-svn set-tree --rmdir HEAD &&\n-\tsvn ls -R $svnrepo | grep ^deeply/nested/directory/number/1\n+\tsvn ls -R '$svnrepo' | grep ^deeply/nested/directory/number/1\n \t\"\n \n \ndiff --git a/t/t9104-git-svn-follow-parent.sh b/t/t9104-git-svn-follow-parent.sh\nindex 7ba7630..aa2bfe2 100755\n--- a/t/t9104-git-svn-follow-parent.sh\n+++ b/t/t9104-git-svn-follow-parent.sh\n@@ -11,9 +11,9 @@ test_expect_success 'initialize repo' \"\n \tcd import &&\n \tmkdir -p trunk &&\n \techo hello > trunk/readme &&\n-\tsvn import -m 'initial' . $svnrepo &&\n+\tsvn import -m 'initial' . '$svnrepo' &&\n \tcd .. &&\n-\tsvn co $svnrepo wc &&\n+\tsvn co '$svnrepo' wc &&\n \tcd wc &&\n \techo world >> trunk/readme &&\n \tpoke trunk/readme &&\n@@ -27,7 +27,7 @@ test_expect_success 'initialize repo' \"\n \t\"\n \n test_expect_success 'init and fetch a moved directory' \"\n-\tgit-svn init --minimize-url -i thunk $svnrepo/thunk &&\n+\tgit-svn init --minimize-url -i thunk '$svnrepo/thunk' &&\n \tgit-svn fetch -i thunk &&\n \ttest \\\"\\`git rev-parse --verify refs/remotes/thunk@2\\`\\\" \\\n            = \\\"\\`git rev-parse --verify refs/remotes/thunk~1\\`\\\" &&\n@@ -38,7 +38,7 @@ test_expect_success 'init and fetch a moved directory' \"\n \t\"\n \n test_expect_success 'init and fetch from one svn-remote' \"\n-        git config svn-remote.svn.url $svnrepo &&\n+        git config svn-remote.svn.url '$svnrepo' &&\n         git config --add svn-remote.svn.fetch \\\n           trunk:refs/remotes/svn/trunk &&\n         git config --add svn-remote.svn.fetch \\\n@@ -52,9 +52,9 @@ test_expect_success 'init and fetch from one svn-remote' \"\n \n test_expect_success 'follow deleted parent' \"\n         (svn cp -m 'resurrecting trunk as junk' \\\n-               $svnrepo/trunk@2 $svnrepo/junk ||\n+               '$svnrepo/trunk@2' '$svnrepo'/junk ||\n          svn cp -m 'resurrecting trunk as junk' \\\n-               -r2 $svnrepo/trunk $svnrepo/junk) &&\n+               -r2 '$svnrepo/trunk' '$svnrepo/junk') &&\n         git config --add svn-remote.svn.fetch \\\n           junk:refs/remotes/svn/junk &&\n         git-svn fetch -i svn/thunk &&\n@@ -67,10 +67,10 @@ test_expect_success 'follow deleted parent' \"\n test_expect_success 'follow larger parent' \"\n         mkdir -p import/trunk/thunk/bump/thud &&\n         echo hi > import/trunk/thunk/bump/thud/file &&\n-        svn import -m 'import a larger parent' import $svnrepo/larger-parent &&\n-        svn cp -m 'hi' $svnrepo/larger-parent $svnrepo/another-larger &&\n+        svn import -m 'import a larger parent' import '$svnrepo/larger-parent' &&\n+        svn cp -m 'hi' '$svnrepo/larger-parent' '$svnrepo/another-larger' &&\n         git-svn init --minimize-url -i larger \\\n-          $svnrepo/another-larger/trunk/thunk/bump/thud &&\n+          '$svnrepo/another-larger/trunk/thunk/bump/thud' &&\n         git-svn fetch -i larger &&\n         git rev-parse --verify refs/remotes/larger &&\n         git rev-parse --verify \\\n@@ -83,23 +83,23 @@ test_expect_success 'follow larger parent' \"\n         \"\n \n test_expect_success 'follow higher-level parent' \"\n-        svn mkdir -m 'follow higher-level parent' $svnrepo/blob &&\n-        svn co $svnrepo/blob blob &&\n+        svn mkdir -m 'follow higher-level parent' '$svnrepo/blob' &&\n+        svn co '$svnrepo/blob' blob &&\n         cd blob &&\n                 echo hi > hi &&\n                 svn add hi &&\n                 svn commit -m 'hihi' &&\n                 cd ..\n-        svn mkdir -m 'new glob at top level' $svnrepo/glob &&\n-        svn mv -m 'move blob down a level' $svnrepo/blob $svnrepo/glob/blob &&\n-        git-svn init --minimize-url -i blob $svnrepo/glob/blob &&\n+        svn mkdir -m 'new glob at top level' '$svnrepo/glob' &&\n+        svn mv -m 'move blob down a level' '$svnrepo/blob' '$svnrepo/glob/blob' &&\n+        git-svn init --minimize-url -i blob '$svnrepo/glob/blob' &&\n         git-svn fetch -i blob\n         \"\n \n test_expect_success 'follow deleted directory' \"\n-\tsvn mv -m 'bye!' $svnrepo/glob/blob/hi $svnrepo/glob/blob/bye &&\n-\tsvn rm -m 'remove glob' $svnrepo/glob &&\n-\tgit-svn init --minimize-url -i glob $svnrepo/glob &&\n+\tsvn mv -m 'bye!' '$svnrepo/glob/blob/hi' '$svnrepo/glob/blob/bye' &&\n+\tsvn rm -m 'remove glob' '$svnrepo/glob' &&\n+\tgit-svn init --minimize-url -i glob '$svnrepo/glob' &&\n \tgit-svn fetch -i glob &&\n \ttest \\\"\\`git cat-file blob refs/remotes/glob:blob/bye\\`\\\" = hi &&\n \ttest \\\"\\`git ls-tree refs/remotes/glob | wc -l \\`\\\" -eq 1\n@@ -118,9 +118,9 @@ test_expect_success 'follow-parent avoids deleting relevant info' \"\n \t  echo 'bad delete test 2' > \\\n \t   import/trunk/subversion/bindings/swig/perl/another-larger &&\n \tcd import &&\n-\t  svn import -m 'r9270 test' . $svnrepo/r9270 &&\n+\t  svn import -m 'r9270 test' . '$svnrepo/r9270' &&\n \tcd .. &&\n-\tsvn co $svnrepo/r9270/trunk/subversion/bindings/swig/perl r9270 &&\n+\tsvn co '$svnrepo/r9270/trunk/subversion/bindings/swig/perl' r9270 &&\n \tcd r9270 &&\n \t  svn mkdir native &&\n \t  svn mv t native/t &&\n@@ -130,7 +130,7 @@ test_expect_success 'follow-parent avoids deleting relevant info' \"\n \t  svn commit -m 'reorg test' &&\n \tcd .. &&\n \tgit-svn init --minimize-url -i r9270-t \\\n-\t  $svnrepo/r9270/trunk/subversion/bindings/swig/perl/native/t &&\n+\t  '$svnrepo/r9270/trunk/subversion/bindings/swig/perl/native/t' &&\n \tgit-svn fetch -i r9270-t &&\n \ttest \\`git rev-list r9270-t | wc -l\\` -eq 2 &&\n \ttest \\\"\\`git ls-tree --name-only r9270-t~1\\`\\\" = \\\n@@ -138,9 +138,9 @@ test_expect_success 'follow-parent avoids deleting relevant info' \"\n \t\"\n \n test_expect_success \"track initial change if it was only made to parent\" \"\n-\tsvn cp -m 'wheee!' $svnrepo/r9270/trunk $svnrepo/r9270/drunk &&\n+\tsvn cp -m 'wheee!' '$svnrepo/r9270/trunk' '$svnrepo/r9270/drunk' &&\n \tgit-svn init --minimize-url -i r9270-d \\\n-\t  $svnrepo/r9270/drunk/subversion/bindings/swig/perl/native/t &&\n+\t  '$svnrepo/r9270/drunk/subversion/bindings/swig/perl/native/t' &&\n \tgit-svn fetch -i r9270-d &&\n \ttest \\`git rev-list r9270-d | wc -l\\` -eq 3 &&\n \ttest \\\"\\`git ls-tree --name-only r9270-t\\`\\\" = \\\n@@ -150,7 +150,7 @@ test_expect_success \"track initial change if it was only made to parent\" \"\n \t\"\n \n test_expect_success \"track multi-parent paths\" \"\n-\tsvn cp -m 'resurrect /glob' $svnrepo/r9270 $svnrepo/glob &&\n+\tsvn cp -m 'resurrect /glob' '$svnrepo/r9270' '$svnrepo/glob' &&\n \tgit-svn multi-fetch &&\n \ttest \\`git cat-file commit refs/remotes/glob | \\\n \t       grep '^parent ' | wc -l\\` -eq 2\n@@ -161,8 +161,8 @@ test_expect_success \"multi-fetch continues to work\" \"\n \t\"\n \n test_expect_success \"multi-fetch works off a 'clean' repository\" \"\n-\trm -r $GIT_DIR/svn $GIT_DIR/refs/remotes $GIT_DIR/logs &&\n-\tmkdir $GIT_DIR/svn &&\n+\trm -r '$GIT_DIR/svn' '$GIT_DIR/refs/remotes' '$GIT_DIR/logs' &&\n+\tmkdir '$GIT_DIR/svn' &&\n \tgit-svn multi-fetch\n \t\"\n \ndiff --git a/t/t9105-git-svn-commit-diff.sh b/t/t9105-git-svn-commit-diff.sh\nindex 318e172..2e1eb75 100755\n--- a/t/t9105-git-svn-commit-diff.sh\n+++ b/t/t9105-git-svn-commit-diff.sh\n@@ -8,7 +8,7 @@ test_expect_success 'initialize repo' \"\n \tmkdir import &&\n \tcd import &&\n \techo hello > readme &&\n-\tsvn import -m 'initial' . $svnrepo &&\n+\tsvn import -m 'initial' . '$svnrepo' &&\n \tcd .. &&\n \techo hello > readme &&\n \tgit update-index --add readme &&\n@@ -27,16 +27,16 @@ prev=`git rev-parse --verify HEAD^1`\n test_expect_success 'test the commit-diff command' \"\n \ttest -n '$prev' && test -n '$head' &&\n \tgit-svn commit-diff -r1 '$prev' '$head' '$svnrepo' &&\n-\tsvn co $svnrepo wc &&\n+\tsvn co '$svnrepo' wc &&\n \tcmp readme wc/readme\n \t\"\n \n test_expect_success 'commit-diff to a sub-directory (with git-svn config)' \"\n-\tsvn import -m 'sub-directory' import $svnrepo/subdir &&\n-\tgit-svn init --minimize-url $svnrepo/subdir &&\n+\tsvn import -m 'sub-directory' import '$svnrepo/subdir' &&\n+\tgit-svn init --minimize-url '$svnrepo/subdir' &&\n \tgit-svn fetch &&\n \tgit-svn commit-diff -r3 '$prev' '$head' &&\n-\tsvn cat $svnrepo/subdir/readme > readme.2 &&\n+\tsvn cat '$svnrepo/subdir/readme' > readme.2 &&\n \tcmp readme readme.2\n \t\"\n \ndiff --git a/t/t9106-git-svn-commit-diff-clobber.sh b/t/t9106-git-svn-commit-diff-clobber.sh\nindex 79b7968..bb42339 100755\n--- a/t/t9106-git-svn-commit-diff-clobber.sh\n+++ b/t/t9106-git-svn-commit-diff-clobber.sh\n@@ -8,14 +8,14 @@ test_expect_success 'initialize repo' \"\n \tmkdir import &&\n \tcd import &&\n \techo initial > file &&\n-\tsvn import -m 'initial' . $svnrepo &&\n+\tsvn import -m 'initial' . '$svnrepo' &&\n \tcd .. &&\n \techo initial > file &&\n \tgit update-index --add file &&\n \tgit commit -a -m 'initial'\n \t\"\n test_expect_success 'commit change from svn side' \"\n-\tsvn co $svnrepo t.svn &&\n+\tsvn co '$svnrepo' t.svn &&\n \tcd t.svn &&\n \techo second line from svn >> file &&\n \tpoke file &&\n@@ -27,7 +27,7 @@ test_expect_success 'commit change from svn side' \"\n test_expect_failure 'commit conflicting change from git' \"\n \techo second line from git >> file &&\n \tgit commit -a -m 'second line from git' &&\n-\tgit-svn commit-diff -r1 HEAD~1 HEAD $svnrepo\n+\tgit-svn commit-diff -r1 HEAD~1 HEAD '$svnrepo'\n \t\" || true\n \n test_expect_success 'commit complementing change from git' \"\n@@ -36,14 +36,14 @@ test_expect_success 'commit complementing change from git' \"\n \tgit commit -a -m 'second line from svn' &&\n \techo third line from git >> file &&\n \tgit commit -a -m 'third line from git' &&\n-\tgit-svn commit-diff -r2 HEAD~1 HEAD $svnrepo\n+\tgit-svn commit-diff -r2 HEAD~1 HEAD '$svnrepo'\n \t\"\n \n test_expect_failure 'dcommit fails to commit because of conflict' \"\n-\tgit-svn init $svnrepo &&\n+\tgit-svn init '$svnrepo' &&\n \tgit-svn fetch &&\n \tgit reset --hard refs/remotes/git-svn &&\n-\tsvn co $svnrepo t.svn &&\n+\tsvn co '$svnrepo' t.svn &&\n \tcd t.svn &&\n \techo fourth line from svn >> file &&\n \tpoke file &&\n@@ -67,7 +67,7 @@ test_expect_success 'dcommit does the svn equivalent of an index merge' \"\n \t\"\n \n test_expect_success 'commit another change from svn side' \"\n-\tsvn co $svnrepo t.svn &&\n+\tsvn co '$svnrepo' t.svn &&\n \tcd t.svn &&\n \t\techo third line from svn >> file &&\n \t\tpoke file &&\ndiff --git a/t/t9107-git-svn-migrate.sh b/t/t9107-git-svn-migrate.sh\nindex 67fdf70..90bf786 100755\n--- a/t/t9107-git-svn-migrate.sh\n+++ b/t/t9107-git-svn-migrate.sh\n@@ -4,7 +4,7 @@ test_description='git-svn metadata migrations from previous versions'\n . ./lib-git-svn.sh\n \n test_expect_success 'setup old-looking metadata' \"\n-\tcp $GIT_DIR/config $GIT_DIR/config-old-git-svn &&\n+\tcp '$GIT_DIR/config' '$GIT_DIR/config-old-git-svn' &&\n \tmkdir import &&\n \tcd import &&\n \t\tfor i in trunk branches/a branches/b \\\n@@ -12,13 +12,13 @@ test_expect_success 'setup old-looking metadata' \"\n \t\t\tmkdir -p \\$i && \\\n \t\t\techo hello >> \\$i/README || exit 1\n \t\tdone && \\\n-\t\tsvn import -m test . $svnrepo\n+\t\tsvn import -m test . '$svnrepo'\n \t\tcd .. &&\n-\tgit-svn init $svnrepo &&\n+\tgit-svn init '$svnrepo' &&\n \tgit-svn fetch &&\n-\tmv $GIT_DIR/svn/* $GIT_DIR/ &&\n-\tmv $GIT_DIR/svn/.metadata $GIT_DIR/ &&\n-\trmdir $GIT_DIR/svn &&\n+\tmv '$GIT_DIR'/svn/* '$GIT_DIR/' &&\n+\tmv '$GIT_DIR/svn/.metadata' '$GIT_DIR/' &&\n+\trmdir '$GIT_DIR/svn' &&\n \tgit update-ref refs/heads/git-svn-HEAD refs/remotes/git-svn &&\n \tgit update-ref refs/heads/svn-HEAD refs/remotes/git-svn &&\n \tgit update-ref -d refs/remotes/git-svn refs/remotes/git-svn\n@@ -28,20 +28,20 @@ head=`git rev-parse --verify refs/heads/git-svn-HEAD^0`\n test_expect_success 'git-svn-HEAD is a real HEAD' \"test -n '$head'\"\n \n test_expect_success 'initialize old-style (v0) git-svn layout' \"\n-\tmkdir -p $GIT_DIR/git-svn/info $GIT_DIR/svn/info &&\n-\techo $svnrepo > $GIT_DIR/git-svn/info/url &&\n-\techo $svnrepo > $GIT_DIR/svn/info/url &&\n+\tmkdir -p '$GIT_DIR/git-svn/info' '$GIT_DIR/svn/info' &&\n+\techo '$svnrepo' > '$GIT_DIR/git-svn/info/url' &&\n+\techo '$svnrepo' > '$GIT_DIR/svn/info/url' &&\n \tgit-svn migrate &&\n-\t! test -d $GIT_DIR/git-svn &&\n+\t! test -d '$GIT_DIR/git-svn' &&\n \tgit rev-parse --verify refs/remotes/git-svn^0 &&\n \tgit rev-parse --verify refs/remotes/svn^0 &&\n-\ttest \\`git config --get svn-remote.svn.url\\` = '$svnrepo' &&\n+\ttest \\\"\\`git config --get svn-remote.svn.url\\`\\\" = \\\"$svnrepo\\\" &&\n \ttest \\`git config --get svn-remote.svn.fetch\\` = \\\n              ':refs/remotes/git-svn'\n \t\"\n \n test_expect_success 'initialize a multi-repository repo' \"\n-\tgit-svn init $svnrepo -T trunk -t tags -b branches &&\n+\tgit-svn init '$svnrepo' -T trunk -t tags -b branches &&\n \tgit config --get-all svn-remote.svn.fetch > fetch.out &&\n \tgrep '^trunk:refs/remotes/trunk$' fetch.out &&\n \ttest -n \\\"\\`git config --get svn-remote.svn.branches \\\n@@ -76,14 +76,14 @@ test_expect_success 'multi-fetch works on partial urls + paths' \"\n test_expect_success 'migrate --minimize on old inited layout' \"\n \tgit config --unset-all svn-remote.svn.fetch &&\n \tgit config --unset-all svn-remote.svn.url &&\n-\trm -rf $GIT_DIR/svn &&\n+\trm -rf '$GIT_DIR/svn' &&\n \tfor i in \\`cat fetch.out\\`; do\n \t\tpath=\\`expr \\$i : '\\\\([^:]*\\\\):.*$'\\`\n \t\tref=\\`expr \\$i : '[^:]*:refs/remotes/\\\\(.*\\\\)$'\\`\n \t\tif test -z \\\"\\$ref\\\"; then continue; fi\n \t\tif test -n \\\"\\$path\\\"; then path=\\\"/\\$path\\\"; fi\n-\t\t( mkdir -p $GIT_DIR/svn/\\$ref/info/ &&\n-\t\techo $svnrepo\\$path > $GIT_DIR/svn/\\$ref/info/url ) || exit 1;\n+\t\t( mkdir -p '$GIT_DIR'/svn/\\$ref/info/ &&\n+\t\techo '$svnrepo'\\$path > '$GIT_DIR'/svn/\\$ref/info/url ) || exit 1;\n \tdone &&\n \tgit-svn migrate --minimize &&\n \ttest -z \\\"\\`git config -l |grep -v '^svn-remote\\.git-svn\\.'\\`\\\" &&\n@@ -99,13 +99,13 @@ test_expect_success 'migrate --minimize on old inited layout' \"\n \n test_expect_success  \".rev_db auto-converted to .rev_db.UUID\" \"\n \tgit-svn fetch -i trunk &&\n-\texpect=$GIT_DIR/svn/trunk/.rev_db.* &&\n+\texpect=\\\"\\`find \\\"\\$GIT_DIR\\\"/svn/trunk/ -name '.rev_db.*'\\`\\\" &&\n \ttest -n \\\"\\$expect\\\" &&\n-\tmv \\$expect $GIT_DIR/svn/trunk/.rev_db &&\n+\tmv \\\"\\$expect\\\" \\\"\\$GIT_DIR\\\"/svn/trunk/.rev_db &&\n \tgit-svn fetch -i trunk &&\n-\ttest -L $GIT_DIR/svn/trunk/.rev_db &&\n-\ttest -f \\$expect &&\n-\tcmp \\$expect $GIT_DIR/svn/trunk/.rev_db\n+\ttest -L \\\"\\$GIT_DIR\\\"/svn/trunk/.rev_db &&\n+\ttest -f \\\"\\$expect\\\" &&\n+\tcmp \\\"\\$expect\\\" \\\"\\$GIT_DIR\\\"/svn/trunk/.rev_db\n \t\"\n \n test_done\ndiff --git a/t/t9108-git-svn-glob.sh b/t/t9108-git-svn-glob.sh\nindex db4344c..c6dc0ef 100755\n--- a/t/t9108-git-svn-glob.sh\n+++ b/t/t9108-git-svn-glob.sh\n@@ -14,8 +14,8 @@ test_expect_success 'test refspec globbing' \"\n \tmkdir -p trunk/src/a trunk/src/b trunk/doc &&\n \techo 'hello world' > trunk/src/a/readme &&\n \techo 'goodbye world' > trunk/src/b/readme &&\n-\tsvn import -m 'initial' trunk $svnrepo/trunk &&\n-\tsvn co $svnrepo tmp &&\n+\tsvn import -m 'initial' trunk '$svnrepo/trunk' &&\n+\tsvn co '$svnrepo' tmp &&\n \tcd tmp &&\n \t\tmkdir branches tags &&\n \t\tsvn add branches tags &&\n@@ -38,7 +38,7 @@ test_expect_success 'test refspec globbing' \"\n \t\tpoke tags/end/src/b/readme &&\n \t\tsvn commit -m 'nothing to see here'\n \t\tcd .. &&\n-\tgit config --add svn-remote.svn.url $svnrepo &&\n+\tgit config --add svn-remote.svn.url '$svnrepo' &&\n \tgit config --add svn-remote.svn.fetch \\\n \t                 'trunk/src/a:refs/remotes/trunk' &&\n \tgit config --add svn-remote.svn.branches \\\n@@ -60,7 +60,7 @@ echo nothing to see here >> expect.two\n cat expect.end >> expect.two\n \n test_expect_success 'test left-hand-side only globbing' \"\n-\tgit config --add svn-remote.two.url $svnrepo &&\n+\tgit config --add svn-remote.two.url '$svnrepo' &&\n \tgit config --add svn-remote.two.fetch trunk:refs/remotes/two/trunk &&\n \tgit config --add svn-remote.two.branches \\\n \t                 'branches/*:refs/remotes/two/branches/*' &&\ndiff --git a/t/t9110-git-svn-use-svm-props.sh b/t/t9110-git-svn-use-svm-props.sh\nindex 6235af4..d4ab01f 100755\n--- a/t/t9110-git-svn-use-svm-props.sh\n+++ b/t/t9110-git-svn-use-svm-props.sh\n@@ -8,11 +8,11 @@ test_description='git-svn useSvmProps test'\n . ./lib-git-svn.sh\n \n test_expect_success 'load svm repo' \"\n-\tsvnadmin load -q $rawsvnrepo < ../t9110/svm.dump &&\n-\tgit-svn init --minimize-url -R arr -i bar $svnrepo/mirror/arr &&\n-\tgit-svn init --minimize-url -R argh -i dir $svnrepo/mirror/argh &&\n+\tsvnadmin load -q '$rawsvnrepo' < ../t9110/svm.dump &&\n+\tgit-svn init --minimize-url -R arr -i bar '$svnrepo/mirror/arr' &&\n+\tgit-svn init --minimize-url -R argh -i dir '$svnrepo/mirror/argh' &&\n \tgit-svn init --minimize-url -R argh -i e \\\n-\t  $svnrepo/mirror/argh/a/b/c/d/e &&\n+\t  '$svnrepo/mirror/argh/a/b/c/d/e' &&\n \tgit config svn.useSvmProps true &&\n \tgit-svn fetch --all\n \t\"\ndiff --git a/t/t9111-git-svn-use-svnsync-props.sh b/t/t9111-git-svn-use-svnsync-props.sh\nindex ec7dedd..936f023 100755\n--- a/t/t9111-git-svn-use-svnsync-props.sh\n+++ b/t/t9111-git-svn-use-svnsync-props.sh\n@@ -8,10 +8,10 @@ test_description='git-svn useSvnsyncProps test'\n . ./lib-git-svn.sh\n \n test_expect_success 'load svnsync repo' \"\n-\tsvnadmin load -q $rawsvnrepo < ../t9111/svnsync.dump &&\n-\tgit-svn init --minimize-url -R arr -i bar $svnrepo/bar &&\n-\tgit-svn init --minimize-url -R argh -i dir $svnrepo/dir &&\n-\tgit-svn init --minimize-url -R argh -i e $svnrepo/dir/a/b/c/d/e &&\n+\tsvnadmin load -q '$rawsvnrepo' < ../t9111/svnsync.dump &&\n+\tgit-svn init --minimize-url -R arr -i bar '$svnrepo/bar' &&\n+\tgit-svn init --minimize-url -R argh -i dir '$svnrepo/dir' &&\n+\tgit-svn init --minimize-url -R argh -i e '$svnrepo/dir/a/b/c/d/e' &&\n \tgit config svn.useSvnsyncProps true &&\n \tgit-svn fetch --all\n \t\"\ndiff --git a/t/t9112-git-svn-md5less-file.sh b/t/t9112-git-svn-md5less-file.sh\nindex 08313bb..b095583 100755\n--- a/t/t9112-git-svn-md5less-file.sh\n+++ b/t/t9112-git-svn-md5less-file.sh\n@@ -38,8 +38,8 @@ PROPS-END\n \n EOF\n \n-test_expect_success 'load svn dumpfile' \"svnadmin load $rawsvnrepo < dumpfile.svn\"\n+test_expect_success 'load svn dumpfile' \"svnadmin load '$rawsvnrepo' < dumpfile.svn\"\n \n-test_expect_success 'initialize git-svn' \"git-svn init $svnrepo\"\n+test_expect_success 'initialize git-svn' \"git-svn init '$svnrepo'\"\n test_expect_success 'fetch revisions from svn' 'git-svn fetch'\n test_done\ndiff --git a/t/t9113-git-svn-dcommit-new-file.sh b/t/t9113-git-svn-dcommit-new-file.sh\nindex 9ef0db9..0088c75 100755\n--- a/t/t9113-git-svn-dcommit-new-file.sh\n+++ b/t/t9113-git-svn-dcommit-new-file.sh\n@@ -15,14 +15,14 @@ test_description='git-svn dcommit new files over svn:// test'\n \n start_svnserve () {\n \tsvnserve --listen-port $SVNSERVE_PORT \\\n-\t         --root $rawsvnrepo \\\n+\t         --root '$rawsvnrepo' \\\n \t         --listen-once \\\n \t         --listen-host 127.0.0.1 &\n }\n \n test_expect_success 'start tracking an empty repo' \"\n-\tsvn mkdir -m 'empty dir' $svnrepo/empty-dir &&\n-\techo anon-access = write >> $rawsvnrepo/conf/svnserve.conf &&\n+\tsvn mkdir -m 'empty dir' '$svnrepo/empty-dir' &&\n+\techo anon-access = write >> '$rawsvnrepo/conf/svnserve.conf' &&\n \tstart_svnserve &&\n \tgit svn init svn://127.0.0.1:$SVNSERVE_PORT &&\n \tgit svn fetch\ndiff --git a/t/t9114-git-svn-dcommit-merge.sh b/t/t9114-git-svn-dcommit-merge.sh\nindex d6ca955..64ec7fd 100755\n--- a/t/t9114-git-svn-dcommit-merge.sh\n+++ b/t/t9114-git-svn-dcommit-merge.sh\n@@ -35,7 +35,7 @@ EOF\n }\n \n test_expect_success 'setup svn repository' \"\n-\tsvn co $svnrepo mysvnwork &&\n+\tsvn co '$svnrepo' mysvnwork &&\n \tmkdir -p mysvnwork/trunk &&\n \tcd mysvnwork &&\n \t\tbig_text_block >> trunk/README &&\n@@ -45,7 +45,7 @@ test_expect_success 'setup svn repository' \"\n \t\"\n \n test_expect_success 'setup git mirror and merge' \"\n-\tgit svn init $svnrepo -t tags -T trunk -b branches &&\n+\tgit svn init '$svnrepo' -t tags -T trunk -b branches &&\n \tgit svn fetch &&\n \tgit checkout --track -b svn remotes/trunk &&\n \tgit checkout -b merge &&\ndiff --git a/t/t9115-git-svn-dcommit-funky-renames.sh b/t/t9115-git-svn-dcommit-funky-renames.sh\nindex 182299c..653578d 100755\n--- a/t/t9115-git-svn-dcommit-funky-renames.sh\n+++ b/t/t9115-git-svn-dcommit-funky-renames.sh\n@@ -8,12 +8,12 @@ test_description='git-svn dcommit can commit renames of files with ugly names'\n . ./lib-git-svn.sh\n \n test_expect_success 'load repository with strange names' \"\n-\tsvnadmin load -q $rawsvnrepo < ../t9115/funky-names.dump &&\n+\tsvnadmin load -q '$rawsvnrepo' < ../t9115/funky-names.dump &&\n \tstart_httpd\n \t\"\n \n test_expect_success 'init and fetch repository' \"\n-\tgit svn init $svnrepo &&\n+\tgit svn init '$svnrepo' &&\n \tgit svn fetch &&\n \tgit reset --hard git-svn\n \t\"\ndiff --git a/t/t9116-git-svn-log.sh b/t/t9116-git-svn-log.sh\nindex 0d4e6b3..70c0c5f 100755\n--- a/t/t9116-git-svn-log.sh\n+++ b/t/t9116-git-svn-log.sh\n@@ -14,9 +14,9 @@ test_expect_success 'setup repository and import' \"\n \t\t\tmkdir -p \\$i && \\\n \t\t\techo hello >> \\$i/README || exit 1\n \t\tdone && \\\n-\t\tsvn import -m test . $svnrepo\n+\t\tsvn import -m test . '$svnrepo'\n \t\tcd .. &&\n-\tgit-svn init $svnrepo -T trunk -b branches -t tags &&\n+\tgit-svn init '$svnrepo' -T trunk -b branches -t tags &&\n \tgit-svn fetch &&\n \tgit reset --hard trunk &&\n \techo bye >> README &&\ndiff --git a/t/test-lib.sh b/t/test-lib.sh\nindex cc1253c..a68415f 100644\n--- a/t/test-lib.sh\n+++ b/t/test-lib.sh\n@@ -229,7 +229,7 @@ test_create_repo () {\n \trepo=\"$1\"\n \tmkdir \"$repo\"\n \tcd \"$repo\" || error \"Cannot setup test environment\"\n-\t\"$GIT_EXEC_PATH/git\" init --template=$GIT_EXEC_PATH/templates/blt/ >/dev/null 2>&1 ||\n+\t\"$GIT_EXEC_PATH/git\" init --template=\"$GIT_EXEC_PATH/templates/blt/\" >/dev/null 2>&1 ||\n \terror \"cannot run git init -- have you built things yet?\"\n \tmv .git/hooks .git/hooks-disabled\n \tcd \"$owd\"\n-- \n1.5.3.1\n"}]}