diff options
author | Phillip Wood <phillip.wood@dunelm.org.uk> | 2018-03-20 11:10:57 +0000 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2018-03-29 11:09:03 -0700 |
commit | da27a6fbd50861149b32cfd1f9e5c36a935c575a (patch) | |
tree | 4a98aa0527d270cd9b096ef18e8db2931daf7c68 /git-rebase.sh | |
parent | rebase -p: error out if --signoff is given (diff) | |
download | tgif-da27a6fbd50861149b32cfd1f9e5c36a935c575a.tar.xz |
rebase --keep-empty: always use interactive rebase
rebase --merge accepts --keep-empty but just ignores it, by using an
implicit interactive rebase the user still gets the rename detection
of a merge based rebase but with with --keep-empty support.
If rebase --keep-empty without --interactive or --merge stops for the
user to resolve merge conflicts then 'git rebase --continue' will
fail. This is because it uses a different code path that does not
create $git_dir/rebase-apply. As rebase --keep-empty was implemented
using cherry-pick it has never supported the am options and now that
interactive rebases support --signoff there is no loss of
functionality by using an implicit interactive rebase.
Signed-off-by: Phillip Wood <phillip.wood@dunelm.org.uk>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'git-rebase.sh')
-rwxr-xr-x | git-rebase.sh | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/git-rebase.sh b/git-rebase.sh index e65b65acb4..ee8c77ad99 100755 --- a/git-rebase.sh +++ b/git-rebase.sh @@ -452,6 +452,11 @@ then test -z "$interactive_rebase" && interactive_rebase=implied fi +if test -n "$keep_empty" +then + test -z "$interactive_rebase" && interactive_rebase=implied +fi + if test -n "$interactive_rebase" then type=interactive |