summaryrefslogtreecommitdiff
path: root/git-rebase--interactive.sh
diff options
context:
space:
mode:
Diffstat (limited to 'git-rebase--interactive.sh')
-rw-r--r--git-rebase--interactive.sh9
1 files changed, 5 insertions, 4 deletions
diff --git a/git-rebase--interactive.sh b/git-rebase--interactive.sh
index 6566d319aa..c6ba7c1551 100644
--- a/git-rebase--interactive.sh
+++ b/git-rebase--interactive.sh
@@ -270,7 +270,7 @@ pick_one_preserving_merges () {
# No point in merging the first parent, that's HEAD
new_parents=${new_parents# $first_parent}
if ! do_with_author output \
- git merge ${strategy:+-s $strategy} -m \
+ git merge --no-ff ${strategy:+-s $strategy} -m \
"$msg_content" $new_parents
then
printf "%s\n" "$msg_content" > "$GIT_DIR"/MERGE_MSG
@@ -510,7 +510,9 @@ do_next () {
refs/*)
message="$GIT_REFLOG_ACTION: $head_name onto $shortonto" &&
git update-ref -m "$message" $head_name $newhead $orig_head &&
- git symbolic-ref HEAD $head_name
+ git symbolic-ref \
+ -m "$GIT_REFLOG_ACTION: returning to $head_name" \
+ HEAD $head_name
;;
esac && {
test ! -f "$state_dir"/verbose ||
@@ -711,7 +713,6 @@ then
# parents to rewrite and skipping dropped commits would
# prematurely end our probe
merges_option=
- first_after_upstream="$(git rev-list --reverse --first-parent $upstream..$orig_head | head -n 1)"
else
merges_option="--no-merges --cherry-pick"
fi
@@ -744,7 +745,7 @@ do
preserve=t
for p in $(git rev-list --parents -1 $sha1 | cut -d' ' -s -f2-)
do
- if test -f "$rewritten"/$p -a \( $p != $onto -o $sha1 = $first_after_upstream \)
+ if test -f "$rewritten"/$p
then
preserve=f
fi