summaryrefslogtreecommitdiff
path: root/t/t4128-apply-root.sh
diff options
context:
space:
mode:
authorJohannes Schindelin <Johannes.Schindelin@gmx.de>2008-06-30 23:44:47 (GMT)
committerJunio C Hamano <gitster@pobox.com>2008-07-02 01:04:28 (GMT)
commitc4730f35cc6507bc117a08885d88668fe02b1a7d (patch)
treeb1383c7eada1a147d2bcd6b2db08da8c3a763520 /t/t4128-apply-root.sh
parent66037991d3fd2ac7e699c7bd21d939b9e397f6a4 (diff)
downloadgit-c4730f35cc6507bc117a08885d88668fe02b1a7d.zip
git-c4730f35cc6507bc117a08885d88668fe02b1a7d.tar.gz
git-c4730f35cc6507bc117a08885d88668fe02b1a7d.tar.bz2
Teach "git apply" to prepend a prefix with "--root=<root>"
With "git apply --root=<root>", all file names in the patch are prepended with <root>. If a "-p" value was given, the paths are stripped _before_ prepending <root>. Wished for by HPA. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t4128-apply-root.sh')
-rwxr-xr-xt/t4128-apply-root.sh32
1 files changed, 32 insertions, 0 deletions
diff --git a/t/t4128-apply-root.sh b/t/t4128-apply-root.sh
new file mode 100755
index 0000000..80b5af2
--- /dev/null
+++ b/t/t4128-apply-root.sh
@@ -0,0 +1,32 @@
+#!/bin/sh
+
+test_description='apply same filename'
+
+. ./test-lib.sh
+
+test_expect_success 'setup' '
+
+ mkdir -p some/sub/dir &&
+ echo Hello > some/sub/dir/file &&
+ git add some/sub/dir/file
+
+'
+
+cat > patch << EOF
+diff a/bla/blub/dir/file b/bla/blub/dir/file
+--- a/bla/blub/dir/file
++++ b/bla/blub/dir/file
+@@ -1,1 +1,1 @@
+-Hello
++Bello
+EOF
+
+test_expect_success 'apply --root -p --index' '
+
+ git apply --root=some/sub -p3 --index patch &&
+ test Bello = $(git show :some/sub/dir/file) &&
+ test Bello = $(cat some/sub/dir/file)
+
+'
+
+test_done