Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.kernel.org/pub/scm/git/git.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2008-05-11 04:14:49 +0400
committerJunio C Hamano <gitster@pobox.com>2008-05-11 20:06:39 +0400
commitd1a8d0ea5fb2d4d43d0ea8f2fe45ec1fce7ec4bc (patch)
tree93c66d6f97e35e0b03694782437f4d8d0daa30e3 /t/t9115-git-svn-dcommit-funky-renames.sh
parent737922aa648c43bc6a61170bee5bfd46ff953f32 (diff)
git-svn: fix cloning of HTTP URLs with '+' in their path
With this, git svn clone -s http://svn.gnome.org/svn/gtk+ is successful. Also modified the funky rename test for this, which _does_ include escaped '+' signs for HTTP URLs. SVN seems to accept either "+" or "%2B" in filenames and directories (just not the main URL), so I'll leave it alone for now. Signed-off-by: Eric Wong <normalperson@yhbt.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t9115-git-svn-dcommit-funky-renames.sh')
-rwxr-xr-xt/t9115-git-svn-dcommit-funky-renames.sh35
1 files changed, 34 insertions, 1 deletions
diff --git a/t/t9115-git-svn-dcommit-funky-renames.sh b/t/t9115-git-svn-dcommit-funky-renames.sh
index 182299cbb5..4acbcb0acd 100755
--- a/t/t9115-git-svn-dcommit-funky-renames.sh
+++ b/t/t9115-git-svn-dcommit-funky-renames.sh
@@ -9,7 +9,7 @@ test_description='git-svn dcommit can commit renames of files with ugly names'
test_expect_success 'load repository with strange names' "
svnadmin load -q $rawsvnrepo < ../t9115/funky-names.dump &&
- start_httpd
+ start_httpd gtk+
"
test_expect_success 'init and fetch repository' "
@@ -49,6 +49,39 @@ test_expect_success 'rename pretty file into ugly one' '
git svn dcommit
'
+test_expect_success 'add a file with plus signs' '
+ echo .. > +_+ &&
+ git update-index --add +_+ &&
+ git commit -m plus &&
+ mkdir gtk+ &&
+ git mv +_+ gtk+/_+_ &&
+ git commit -m plus_dir &&
+ git svn dcommit
+ '
+
+test_expect_success 'clone the repository to test rebase' "
+ git svn clone $svnrepo test-rebase &&
+ cd test-rebase &&
+ echo test-rebase > test-rebase &&
+ git add test-rebase &&
+ git commit -m test-rebase &&
+ cd ..
+ "
+
+test_expect_success 'make a commit to test rebase' "
+ echo test-rebase-main > test-rebase-main &&
+ git add test-rebase-main &&
+ git commit -m test-rebase-main &&
+ git svn dcommit
+ "
+
+test_expect_success 'git-svn rebase works inside a fresh-cloned repository' "
+ cd test-rebase &&
+ git svn rebase &&
+ test -e test-rebase-main &&
+ test -e test-rebase
+ "
+
stop_httpd
test_done