rebase -i: Change function make_squash_message into update_squash_message
Alter the file $SQUASH_MSG in place rather than outputting the new message then juggling it around. Change the function name accordingly. Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>maint
parent
7756ecffe7
commit
bde1a68624
|
@ -358,21 +358,26 @@ nth_string () {
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
make_squash_message () {
|
update_squash_message () {
|
||||||
if test -f "$SQUASH_MSG"; then
|
if test -f "$SQUASH_MSG"; then
|
||||||
|
mv "$SQUASH_MSG" "$SQUASH_MSG".bak || exit
|
||||||
COUNT=$(($(sed -n \
|
COUNT=$(($(sed -n \
|
||||||
-e "1s/^# This is a combination of \(.*\) commits\./\1/p" \
|
-e "1s/^# This is a combination of \(.*\) commits\./\1/p" \
|
||||||
-e "q" < "$SQUASH_MSG")+1))
|
-e "q" < "$SQUASH_MSG".bak)+1))
|
||||||
|
{
|
||||||
echo "# This is a combination of $COUNT commits."
|
echo "# This is a combination of $COUNT commits."
|
||||||
sed -e 1d -e '2,/^./{
|
sed -e 1d -e '2,/^./{
|
||||||
/^$/d
|
/^$/d
|
||||||
}' <"$SQUASH_MSG"
|
}' <"$SQUASH_MSG".bak
|
||||||
|
} >$SQUASH_MSG
|
||||||
else
|
else
|
||||||
COUNT=2
|
COUNT=2
|
||||||
|
{
|
||||||
echo "# This is a combination of 2 commits."
|
echo "# This is a combination of 2 commits."
|
||||||
echo "# The first commit's message is:"
|
echo "# The first commit's message is:"
|
||||||
echo
|
echo
|
||||||
commit_message HEAD
|
commit_message HEAD
|
||||||
|
} >$SQUASH_MSG
|
||||||
fi
|
fi
|
||||||
case $1 in
|
case $1 in
|
||||||
squash)
|
squash)
|
||||||
|
@ -387,7 +392,7 @@ make_squash_message () {
|
||||||
echo
|
echo
|
||||||
commit_message $2 | sed -e 's/^/# /'
|
commit_message $2 | sed -e 's/^/# /'
|
||||||
;;
|
;;
|
||||||
esac
|
esac >>$SQUASH_MSG
|
||||||
}
|
}
|
||||||
|
|
||||||
peek_next_command () {
|
peek_next_command () {
|
||||||
|
@ -450,7 +455,7 @@ do_next () {
|
||||||
die "Cannot '$squash_style' without a previous commit"
|
die "Cannot '$squash_style' without a previous commit"
|
||||||
|
|
||||||
mark_action_done
|
mark_action_done
|
||||||
make_squash_message $squash_style $sha1 > "$MSG"
|
update_squash_message $squash_style $sha1
|
||||||
failed=f
|
failed=f
|
||||||
author_script=$(get_author_ident_from_commit HEAD)
|
author_script=$(get_author_ident_from_commit HEAD)
|
||||||
echo "$author_script" > "$AUTHOR_SCRIPT"
|
echo "$author_script" > "$AUTHOR_SCRIPT"
|
||||||
|
@ -460,16 +465,16 @@ do_next () {
|
||||||
case "$(peek_next_command)" in
|
case "$(peek_next_command)" in
|
||||||
squash|s|fixup|f)
|
squash|s|fixup|f)
|
||||||
USE_OUTPUT=output
|
USE_OUTPUT=output
|
||||||
|
cp "$SQUASH_MSG" "$MSG" || exit
|
||||||
MSG_OPT=-F
|
MSG_OPT=-F
|
||||||
EDIT_OR_FILE="$MSG"
|
EDIT_OR_FILE="$MSG"
|
||||||
cp "$MSG" "$SQUASH_MSG"
|
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
USE_OUTPUT=
|
USE_OUTPUT=
|
||||||
MSG_OPT=
|
MSG_OPT=
|
||||||
EDIT_OR_FILE=-e
|
EDIT_OR_FILE=-e
|
||||||
rm -f "$SQUASH_MSG" || exit
|
cp "$SQUASH_MSG" "$MSG" || exit
|
||||||
cp "$MSG" "$GIT_DIR"/SQUASH_MSG
|
mv "$SQUASH_MSG" "$GIT_DIR"/SQUASH_MSG || exit
|
||||||
rm -f "$GIT_DIR"/MERGE_MSG || exit
|
rm -f "$GIT_DIR"/MERGE_MSG || exit
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
Loading…
Reference in New Issue