From: Junio C Hamano Date: Thu, 17 Apr 2008 00:04:05 +0000 (-0700) Subject: Merge branch 'maint-1.5.4' into maint X-Git-Tag: v1.5.5.1~6 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/d0ab520a2599afdfd4d61894863984fc36842b12?ds=inline;hp=-c Merge branch 'maint-1.5.4' into maint * maint-1.5.4: git-am: minor cleanup Clarify and fix English in "git-rm" documentation --- d0ab520a2599afdfd4d61894863984fc36842b12 diff --combined git-am.sh index 245e1db1fc,6be33d9ddb..646dc45b8d --- a/git-am.sh +++ b/git-am.sh @@@ -2,14 -2,13 +2,14 @@@ # # Copyright (c) 2005, 2006 Junio C Hamano +SUBDIRECTORY_OK=Yes OPTIONS_KEEPDASHDASH= OPTIONS_SPEC="\ git-am [options] |... git-am [options] --resolved git-am [options] --skip -- -d,dotest= use and not .dotest +d,dotest= (removed -- do not use) i,interactive run interactively b,binary pass --allo-binary-replacement to git-apply 3,3way allow fall back on 3way merging if needed @@@ -21,14 -20,11 +21,14 @@@ C= pass it through git-app p= 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" +skip skip the current patch +rebasing (internal use for git-rebase)" . git-sh-setup +prefix=$(git rev-parse --show-prefix) set_reflog_action am require_work_tree +cd_to_toplevel git var GIT_COMMITTER_IDENT >/dev/null || exit @@@ -51,6 -47,10 +51,6 @@@ stop_here_user_resolve () then cmdline="$cmdline -3" fi - if test '.dotest' != "$dotest" - then - cmdline="$cmdline -d=$dotest" - fi echo "When you have resolved this problem run \"$cmdline --resolved\"." echo "If you would prefer to skip this patch, instead run \"$cmdline --skip\"." @@@ -118,8 -118,7 +118,8 @@@ It does not apply to blobs recorded in } prec=4 -dotest=.dotest sign= utf8=t keep= skip= interactive= resolved= binary= +dotest=".dotest" +sign= utf8=t keep= skip= interactive= resolved= binary= rebasing= resolvemsg= resume= git_apply_opt= @@@ -144,11 -143,8 +144,11 @@@ d resolved=t ;; --skip) skip=t ;; + --rebasing) + rebasing=t threeway=t keep=t binary=t ;; -d|--dotest) - shift; dotest=$1;; + die "-d option is no longer supported. Do not use." + ;; --resolvemsg) shift; resolvemsg=$1 ;; --whitespace) @@@ -184,7 -180,7 +184,7 @@@ the 0,) # No file input but without resume parameters; catch # user error to feed us a patch from standard input - # when there is already .dotest. This is somewhat + # when there is already $dotest. This is somewhat # unreliable -- stdin could be /dev/null for example # and the caller did not intend to feed us a patch but # wanted to continue unattended. @@@ -204,24 -200,6 +204,24 @@@ els # Start afresh. mkdir -p "$dotest" || exit + if test -n "$prefix" && test $# != 0 + then + first=t + for arg + do + test -n "$first" && { + set x + first= + } + case "$arg" in + /*) + set "$@" "$arg" ;; + *) + set "$@" "$prefix$arg" ;; + esac + done + shift + fi git mailsplit -d"$prec" -o"$dotest" -b -- "$@" > "$dotest/last" || { rm -fr "$dotest" exit 1 @@@ -236,12 -214,6 +236,12 @@@ echo "$utf8" >"$dotest/utf8" echo "$keep" >"$dotest/keep" echo 1 >"$dotest/next" + if test -n "$rebasing" + then + : >"$dotest/rebasing" + else + : >"$dotest/applying" + fi fi case "$resolved" in @@@ -354,7 -326,7 +354,7 @@@ d LAST_SIGNED_OFF_BY=` sed -ne '/^Signed-off-by: /p' \ "$dotest/msg-clean" | - tail -n 1 + sed -ne '$p' ` ADD_SIGNOFF=` test "$LAST_SIGNED_OFF_BY" = "$SIGNOFF" || { @@@ -383,7 -355,6 +383,6 @@@ ;; esac esac - FIRSTLINE=$(head -1 "$dotest/final-commit") resume= if test "$interactive" = t @@@ -404,7 -375,6 +403,6 @@@ [aA]*) action=yes interactive= ;; [nN]*) action=skip ;; [eE]*) git_editor "$dotest/final-commit" - FIRSTLINE=$(head -1 "$dotest/final-commit") action=again ;; [vV]*) action=again LESS=-S ${PAGER:-less} "$dotest/patch" ;; @@@ -414,6 -384,7 +412,7 @@@ else action=yes fi + FIRSTLINE=$(head -1 "$dotest/final-commit") if test $action = skip then