aboutsummaryrefslogtreecommitdiff
path: root/t/t9167-git-svn-cmd-branch-subproject.sh
diff options
context:
space:
mode:
authorTobias Schulte <tobias.schulte@gliderpilot.de>2013-05-15 22:14:43 +0200
committerEric Wong <normalperson@yhbt.net>2013-05-20 22:05:54 +0000
commitf4f4c7fc00e8acf91150c717cf005fc36c1dd120 (patch)
tree73e91bb9aa07d678e030b9da193c13bf4672056b /t/t9167-git-svn-cmd-branch-subproject.sh
parent7d82b4af1cefe55b825f524f250cd0002dbba4ab (diff)
downloadgit-f4f4c7fc00e8acf91150c717cf005fc36c1dd120.tar.gz
git-f4f4c7fc00e8acf91150c717cf005fc36c1dd120.tar.xz
git-svn: introduce --parents parameter for commands branch and tag
This parameter is equivalent to the parameter --parents on svn cp commands and is useful for non-standard repository layouts. Signed-off-by: Tobias Schulte <tobias.schulte@gliderpilot.de> Signed-off-by: Eric Wong <normalperson@yhbt.net>
Diffstat (limited to 't/t9167-git-svn-cmd-branch-subproject.sh')
-rwxr-xr-xt/t9167-git-svn-cmd-branch-subproject.sh48
1 files changed, 48 insertions, 0 deletions
diff --git a/t/t9167-git-svn-cmd-branch-subproject.sh b/t/t9167-git-svn-cmd-branch-subproject.sh
new file mode 100755
index 000000000..53def876e
--- /dev/null
+++ b/t/t9167-git-svn-cmd-branch-subproject.sh
@@ -0,0 +1,48 @@
+#!/bin/sh
+#
+# Copyright (c) 2013 Tobias Schulte
+#
+
+test_description='git svn branch for subproject clones'
+. ./lib-git-svn.sh
+
+test_expect_success 'initialize svnrepo' '
+ mkdir import &&
+ (
+ cd import &&
+ mkdir -p trunk/project branches tags &&
+ (
+ cd trunk/project &&
+ echo foo > foo
+ ) &&
+ svn_cmd import -m "import for git-svn" . "$svnrepo" >/dev/null
+ ) &&
+ rm -rf import &&
+ svn_cmd co "$svnrepo"/trunk/project trunk/project &&
+ (
+ cd trunk/project &&
+ echo bar >> foo &&
+ svn_cmd ci -m "updated trunk"
+ ) &&
+ rm -rf trunk
+'
+
+test_expect_success 'import into git' '
+ git svn init --trunk=trunk/project --branches=branches/*/project \
+ --tags=tags/*/project "$svnrepo" &&
+ git svn fetch &&
+ git checkout remotes/trunk
+'
+
+test_expect_success 'git svn branch tests' '
+ test_must_fail git svn branch a &&
+ git svn branch --parents a &&
+ test_must_fail git svn branch -t tag1 &&
+ git svn branch --parents -t tag1 &&
+ test_must_fail git svn branch --tag tag2 &&
+ git svn branch --parents --tag tag2 &&
+ test_must_fail git svn tag tag3 &&
+ git svn tag --parents tag3
+'
+
+test_done