Thread (1 message) 1 message, 1 author, 2016-06-15

Re: [PATCH] git-am: Pass the --directory option through to git-apply

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:45:16

Kevin Ballard [off-list ref] writes:
quoted hunk
diff --git a/Documentation/git-am.txt b/Documentation/git-am.txt
index b9c6fac..64c8178 100644
--- a/Documentation/git-am.txt
+++ b/Documentation/git-am.txt
@@ -66,6 +66,7 @@ default.   You could use `--no-utf8` to override this.
 
 -C<n>::
 -p<n>::
+--directory=<root>::
 	These flags are passed to the 'git-apply' (see linkgit:git-apply[1])
 	program that applies
 	the patch.
diff --git a/git-am.sh b/git-am.sh
index aa60261..7e7a86f 100755
--- a/git-am.sh
+++ b/git-am.sh
@@ -18,6 +18,7 @@ k,keep          pass -k flag to git-mailinfo
 whitespace=     pass it through git-apply
 C=              pass it through git-apply
 p=              pass it through git-apply
+directory=      pass it through git-apply
 resolvemsg=     override error message when patch failure occurs
 r,resolved      to be used after a patch failure
 skip            skip the current patch
@@ -155,7 +156,7 @@ do
 		;;
 	--resolvemsg)
 		shift; resolvemsg=$1 ;;
-	--whitespace)
+	--whitespace|--directory)
 		git_apply_opt="$git_apply_opt $1=$2"; shift ;;
 	-C|-p)
 		git_apply_opt="$git_apply_opt $1$2"; shift ;;
Thanks, will queue.

This inherits an ancient breakage that was introduced to the --whitespace
option by 67dad68 (add -C[NUM] to git-am, 2007-02-08), in that you need to
give the next "git am" session the same option when you get a conflict and
need to restart.  We should fix this ancient breakage by recording the
miscellaneous options that we append to $git_apply_opt variable (we should
remove the use of "$dotest/whitespace" that is now a no-op but 67dad68 did
not remove).  That is a separate topic anyway, but the end result should:

 * Save the options in effect in $dotest/, just like "sign", "utf8" and
   "keep" are kept;

 * Upon command startup, read the saved options, and then let the command
   line options override them (which is not what the current code does, by
   the way);

so that you can give necessary --directory, --whitespace, -C etc. options
when you feed your series to "git-am", and after fixing up a rejected
patch, you can continue without typing the same set of options again.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help