rebase -i: Extract a function "commit_message"
...instead of repeating the same short but slightly obscure blob of code in several places. Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
f99e269c44
commit
ee0a4afbe2
@ -118,6 +118,11 @@ output () {
|
|||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Output the commit message for the specified commit.
|
||||||
|
commit_message () {
|
||||||
|
git cat-file commit "$1" | sed "1,/^$/d"
|
||||||
|
}
|
||||||
|
|
||||||
run_pre_rebase_hook () {
|
run_pre_rebase_hook () {
|
||||||
if test -z "$OK_TO_SKIP_PRE_REBASE" &&
|
if test -z "$OK_TO_SKIP_PRE_REBASE" &&
|
||||||
test -x "$GIT_DIR/hooks/pre-rebase"
|
test -x "$GIT_DIR/hooks/pre-rebase"
|
||||||
@ -178,7 +183,7 @@ make_patch () {
|
|||||||
;;
|
;;
|
||||||
esac > "$DOTEST"/patch
|
esac > "$DOTEST"/patch
|
||||||
test -f "$MSG" ||
|
test -f "$MSG" ||
|
||||||
git cat-file commit "$1" | sed "1,/^$/d" > "$MSG"
|
commit_message "$1" > "$MSG"
|
||||||
test -f "$AUTHOR_SCRIPT" ||
|
test -f "$AUTHOR_SCRIPT" ||
|
||||||
get_author_ident_from_commit "$1" > "$AUTHOR_SCRIPT"
|
get_author_ident_from_commit "$1" > "$AUTHOR_SCRIPT"
|
||||||
}
|
}
|
||||||
@ -316,7 +321,7 @@ pick_one_preserving_merges () {
|
|||||||
# redo merge
|
# redo merge
|
||||||
author_script=$(get_author_ident_from_commit $sha1)
|
author_script=$(get_author_ident_from_commit $sha1)
|
||||||
eval "$author_script"
|
eval "$author_script"
|
||||||
msg="$(git cat-file commit $sha1 | sed -e '1,/^$/d')"
|
msg="$(commit_message $sha1)"
|
||||||
# No point in merging the first parent, that's HEAD
|
# No point in merging the first parent, that's HEAD
|
||||||
new_parents=${new_parents# $first_parent}
|
new_parents=${new_parents# $first_parent}
|
||||||
if ! GIT_AUTHOR_NAME="$GIT_AUTHOR_NAME" \
|
if ! GIT_AUTHOR_NAME="$GIT_AUTHOR_NAME" \
|
||||||
@ -361,20 +366,20 @@ make_squash_message () {
|
|||||||
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
|
||||||
git cat-file commit HEAD | sed -e '1,/^$/d'
|
commit_message HEAD
|
||||||
fi
|
fi
|
||||||
case $1 in
|
case $1 in
|
||||||
squash)
|
squash)
|
||||||
echo
|
echo
|
||||||
echo "# This is the $(nth_string $COUNT) commit message:"
|
echo "# This is the $(nth_string $COUNT) commit message:"
|
||||||
echo
|
echo
|
||||||
git cat-file commit $2 | sed -e '1,/^$/d'
|
commit_message $2
|
||||||
;;
|
;;
|
||||||
fixup)
|
fixup)
|
||||||
echo
|
echo
|
||||||
echo "# The $(nth_string $COUNT) commit message will be skipped:"
|
echo "# The $(nth_string $COUNT) commit message will be skipped:"
|
||||||
echo
|
echo
|
||||||
git cat-file commit $2 | sed -e '1,/^$/d' -e 's/^/# /'
|
commit_message $2 | sed -e 's/^/# /'
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user