am: --rebasing
The new option --rebasing is used internally for rebase to tell am that it is being used for its purpose. This would leave .dotest/rebasing to help "completion" scripts tell if the ongoing operation is am or rebase. Also the option at the same time stands for --binary, -3 and -k which are always given when rebase drives am as its backend. Using the information "am" leaves, git-completion.bash tells ongoing rebase and am apart. Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
e72c74062c
commit
3041c32430
@ -70,7 +70,15 @@ __git_ps1 ()
|
|||||||
local b
|
local b
|
||||||
if [ -d "$g/../.dotest" ]
|
if [ -d "$g/../.dotest" ]
|
||||||
then
|
then
|
||||||
|
if test -f "$g/../.dotest/rebasing"
|
||||||
|
then
|
||||||
|
r="|REBASE"
|
||||||
|
elif test -f "$g/../.dotest/applying"
|
||||||
|
then
|
||||||
|
r="|AM"
|
||||||
|
else
|
||||||
r="|AM/REBASE"
|
r="|AM/REBASE"
|
||||||
|
fi
|
||||||
b="$(git symbolic-ref HEAD 2>/dev/null)"
|
b="$(git symbolic-ref HEAD 2>/dev/null)"
|
||||||
elif [ -f "$g/.dotest-merge/interactive" ]
|
elif [ -f "$g/.dotest-merge/interactive" ]
|
||||||
then
|
then
|
||||||
|
13
git-am.sh
13
git-am.sh
@ -21,7 +21,8 @@ C= pass it through git-apply
|
|||||||
p= pass it through git-apply
|
p= pass it through git-apply
|
||||||
resolvemsg= override error message when patch failure occurs
|
resolvemsg= override error message when patch failure occurs
|
||||||
r,resolved to be used after a patch failure
|
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
|
. git-sh-setup
|
||||||
prefix=$(git rev-parse --show-prefix)
|
prefix=$(git rev-parse --show-prefix)
|
||||||
@ -122,7 +123,7 @@ reread_subject () {
|
|||||||
|
|
||||||
prec=4
|
prec=4
|
||||||
dotest=".dotest"
|
dotest=".dotest"
|
||||||
sign= utf8=t keep= skip= interactive= resolved= binary=
|
sign= utf8=t keep= skip= interactive= resolved= binary= rebasing=
|
||||||
resolvemsg= resume=
|
resolvemsg= resume=
|
||||||
git_apply_opt=
|
git_apply_opt=
|
||||||
|
|
||||||
@ -147,6 +148,8 @@ do
|
|||||||
resolved=t ;;
|
resolved=t ;;
|
||||||
--skip)
|
--skip)
|
||||||
skip=t ;;
|
skip=t ;;
|
||||||
|
--rebasing)
|
||||||
|
rebasing=t threeway=t keep=t binary=t ;;
|
||||||
-d|--dotest)
|
-d|--dotest)
|
||||||
die "-d option is no longer supported. Do not use."
|
die "-d option is no longer supported. Do not use."
|
||||||
;;
|
;;
|
||||||
@ -237,6 +240,12 @@ else
|
|||||||
echo "$utf8" >"$dotest/utf8"
|
echo "$utf8" >"$dotest/utf8"
|
||||||
echo "$keep" >"$dotest/keep"
|
echo "$keep" >"$dotest/keep"
|
||||||
echo 1 >"$dotest/next"
|
echo 1 >"$dotest/next"
|
||||||
|
if test -n "$rebasing"
|
||||||
|
then
|
||||||
|
: >"$dotest/rebasing"
|
||||||
|
else
|
||||||
|
: >"$dotest/applying"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
case "$resolved" in
|
case "$resolved" in
|
||||||
|
@ -376,7 +376,7 @@ fi
|
|||||||
if test -z "$do_merge"
|
if test -z "$do_merge"
|
||||||
then
|
then
|
||||||
git format-patch -k --stdout --full-index --ignore-if-in-upstream "$upstream"..ORIG_HEAD |
|
git format-patch -k --stdout --full-index --ignore-if-in-upstream "$upstream"..ORIG_HEAD |
|
||||||
git am $git_am_opt --binary -3 -k --resolvemsg="$RESOLVEMSG" &&
|
git am $git_am_opt --rebasing --resolvemsg="$RESOLVEMSG" &&
|
||||||
move_to_original_branch
|
move_to_original_branch
|
||||||
ret=$?
|
ret=$?
|
||||||
test 0 != $ret -a -d .dotest &&
|
test 0 != $ret -a -d .dotest &&
|
||||||
|
Loading…
Reference in New Issue
Block a user