author | Junio C Hamano <gitster@pobox.com> | |
Thu, 29 Jan 2009 07:56:13 +0000 (23:56 -0800) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Thu, 29 Jan 2009 07:56:13 +0000 (23:56 -0800) |
* jc/maint-format-patch-o-relative:
Teach format-patch to handle output directory relative to cwd
Conflicts:
t/t4014-format-patch.sh
Teach format-patch to handle output directory relative to cwd
Conflicts:
t/t4014-format-patch.sh
1 | 2 | |||
---|---|---|---|---|
builtin-log.c | patch | | diff1 | | diff2 | | blob | history |
t/t4014-format-patch.sh | patch | | diff1 | | diff2 | | blob | history |
diff --cc builtin-log.c
Simple merge
diff --cc t/t4014-format-patch.sh
index 9d99dc28879d4f7f35001e0785f97f319fe13b40,16de4364d74bfdb3069149af740d329351b05e2c..f045898fe3196b068d03a66fd9edeea6f32add30
+++ b/t/t4014-format-patch.sh
'
+cat > expect << EOF
+---
+ file | 16 ++++++++++++++++
+ 1 files changed, 16 insertions(+), 0 deletions(-)
+
+diff --git a/file b/file
+index 40f36c6..2dc5c23 100644
+--- a/file
++++ b/file
+@@ -13,4 +13,20 @@ C
+ 10
+ D
+ E
+ F
++5
+EOF
+
+test_expect_success 'format-patch respects -U' '
+
+ git format-patch -U4 -2 &&
+ sed -e "1,/^$/d" -e "/^+5/q" < 0001-This-is-an-excessively-long-subject-line-for-a-messa.patch > output &&
+ test_cmp expect output
+
+'
+
+ test_expect_success 'format-patch from a subdirectory (1)' '
+ filename=$(
+ rm -rf sub &&
+ mkdir -p sub/dir &&
+ cd sub/dir &&
+ git format-patch -1
+ ) &&
+ case "$filename" in
+ 0*)
+ ;; # ok
+ *)
+ echo "Oops? $filename"
+ false
+ ;;
+ esac &&
+ test -f "$filename"
+ '
+
+ test_expect_success 'format-patch from a subdirectory (2)' '
+ filename=$(
+ rm -rf sub &&
+ mkdir -p sub/dir &&
+ cd sub/dir &&
+ git format-patch -1 -o ..
+ ) &&
+ case "$filename" in
+ ../0*)
+ ;; # ok
+ *)
+ echo "Oops? $filename"
+ false
+ ;;
+ esac &&
+ basename=$(expr "$filename" : ".*/\(.*\)") &&
+ test -f "sub/$basename"
+ '
+
+ test_expect_success 'format-patch from a subdirectory (3)' '
+ here="$TEST_DIRECTORY/$test" &&
+ rm -f 0* &&
+ filename=$(
+ rm -rf sub &&
+ mkdir -p sub/dir &&
+ cd sub/dir &&
+ git format-patch -1 -o "$here"
+ ) &&
+ basename=$(expr "$filename" : ".*/\(.*\)") &&
+ test -f "$basename"
+ '
+
test_done