This allows to pass patches around from repositories, where the other repository doesn't feature certain files.
In the special case this works for dash git sync to klibc dash:
git am --directory="usr/dash" --exclude="usr/dash/configure.ac" \
--exclude="usr/dash/ChangeLog" --exclude="usr/dash/dash.1" \
.. -i -s -k ../dash/000X-foo.patchSigned-off-by: maximilian attems <max@stro.at> --- git-am.sh | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)
This is a resent, haven't a test for this usecase, but it is useful and simple enough, so reposted.
Show changes to git-am.sh +2 −1
diff --git a/git-am.sh b/git-am.sh index 463c741..8d185aa 100755 --- a/git-am.sh +++ b/git-am.sh @@ -22,6 +22,7 @@ whitespace= pass it through git-apply ignore-space-change pass it through git-apply ignore-whitespace pass it through git-apply directory= pass it through git-apply +exclude= pass it through git-apply C= pass it through git-apply p= pass it through git-apply patch-format= format the patch(es) are in @@ -366,7 +367,7 @@ do ;; --resolvemsg) shift; resolvemsg=$1 ;; - --whitespace|--directory) + --whitespace|--directory|--exclude) git_apply_opt="$git_apply_opt $(sq "$1=$2")"; shift ;; -C|-p) git_apply_opt="$git_apply_opt $(sq "$1$2")"; shift ;;
-- 1.7.5.4