* [PATCH] rebase -i: proper prepare-commit-msg hook argument when squashing
@ 2008-10-03 0:08 SZEDER Gábor
2008-10-03 6:01 ` Jeff King
0 siblings, 1 reply; 3+ messages in thread
From: SZEDER Gábor @ 2008-10-03 0:08 UTC (permalink / raw)
To: git; +Cc: SZEDER Gábor
One would expect that the prepare-commit-msg hook gets 'squash' as the
second argument when squashing commits with 'rebase -i'. However,
that was not the case, as it got 'merge' instead. This patch fixes
the problem.
Signed-off-by: SZEDER Gábor <szeder@ira.uka.de>
---
git-rebase--interactive.sh | 17 +++++++++++------
1 files changed, 11 insertions(+), 6 deletions(-)
diff --git a/git-rebase--interactive.sh b/git-rebase--interactive.sh
index edb6ec6..ec4299a 100755
--- a/git-rebase--interactive.sh
+++ b/git-rebase--interactive.sh
@@ -304,23 +304,28 @@ do_next () {
mark_action_done
make_squash_message $sha1 > "$MSG"
+ failed=f
+ author_script=$(get_author_ident_from_commit HEAD)
+ output git reset --soft HEAD^
+ pick_one -n $sha1 || failed=t
case "$(peek_next_command)" in
squash|s)
EDIT_COMMIT=
USE_OUTPUT=output
+ MSG_OPT=-F
+ MSG_FILE="$MSG"
cp "$MSG" "$SQUASH_MSG"
;;
*)
EDIT_COMMIT=-e
USE_OUTPUT=
+ MSG_OPT=
+ MSG_FILE=
rm -f "$SQUASH_MSG" || exit
+ cp -v "$MSG" "$GIT_DIR"/SQUASH_MSG
+ rm -f "$GIT_DIR"/MERGE_MSG || exit
;;
esac
-
- failed=f
- author_script=$(get_author_ident_from_commit HEAD)
- output git reset --soft HEAD^
- pick_one -n $sha1 || failed=t
echo "$author_script" > "$DOTEST"/author-script
if test $failed = f
then
@@ -329,7 +334,7 @@ do_next () {
GIT_AUTHOR_NAME="$GIT_AUTHOR_NAME" \
GIT_AUTHOR_EMAIL="$GIT_AUTHOR_EMAIL" \
GIT_AUTHOR_DATE="$GIT_AUTHOR_DATE" \
- $USE_OUTPUT git commit --no-verify -F "$MSG" $EDIT_COMMIT || failed=t
+ $USE_OUTPUT git commit --no-verify $MSG_OPT "$MSG_FILE" $EDIT_COMMIT || failed=t
fi
if test $failed = t
then
--
1.6.0.2.430.gfc53
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] rebase -i: proper prepare-commit-msg hook argument when squashing
2008-10-03 0:08 [PATCH] rebase -i: proper prepare-commit-msg hook argument when squashing SZEDER Gábor
@ 2008-10-03 6:01 ` Jeff King
2008-10-03 9:33 ` rebase -i: remove leftover debugging SZEDER Gábor
0 siblings, 1 reply; 3+ messages in thread
From: Jeff King @ 2008-10-03 6:01 UTC (permalink / raw)
To: SZEDER Gábor; +Cc: Shawn O. Pearce, git
On Fri, Oct 03, 2008 at 02:08:21AM +0200, SZEDER Gábor wrote:
> + cp -v "$MSG" "$GIT_DIR"/SQUASH_MSG
Sorry, but "cp -v" is not portable. It's not in POSIX, and this breaks
the script for (at least) Solaris.
However, it's not even clear to me why "-v" is used at all, considering
that the "squash" case above does not use it. Is it a debugging
leftover? Am I missing something?
[Aside: My Solaris 8 autobuilder is now running, which was a huge pain.
However, it is very satisfying to catch things like this in "next"
before they hit a wider audience.]
-Peff
^ permalink raw reply [flat|nested] 3+ messages in thread
* rebase -i: remove leftover debugging
2008-10-03 6:01 ` Jeff King
@ 2008-10-03 9:33 ` SZEDER Gábor
0 siblings, 0 replies; 3+ messages in thread
From: SZEDER Gábor @ 2008-10-03 9:33 UTC (permalink / raw)
To: Jeff King, Shawn O. Pearce; +Cc: git
Signed-off-by: SZEDER Gábor <szeder@ira.uka.de>
---
On Fri, Oct 03, 2008 at 02:01:10AM -0400, Jeff King wrote:
> Sorry, but "cp -v" is not portable. It's not in POSIX, and this breaks
> the script for (at least) Solaris.
>
> However, it's not even clear to me why "-v" is used at all, considering
> that the "squash" case above does not use it. Is it a debugging
> leftover? Am I missing something?
Oh, yeah, it's just leftover debugging. Thanks for catching.
git-rebase--interactive.sh | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/git-rebase--interactive.sh b/git-rebase--interactive.sh
index 77e1132..ec4299a 100755
--- a/git-rebase--interactive.sh
+++ b/git-rebase--interactive.sh
@@ -322,7 +322,7 @@ do_next () {
MSG_OPT=
MSG_FILE=
rm -f "$SQUASH_MSG" || exit
- cp -v "$MSG" "$GIT_DIR"/SQUASH_MSG
+ cp "$MSG" "$GIT_DIR"/SQUASH_MSG
rm -f "$GIT_DIR"/MERGE_MSG || exit
;;
esac
--
1.6.0.2.430.gfc53
^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2008-10-03 9:34 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-10-03 0:08 [PATCH] rebase -i: proper prepare-commit-msg hook argument when squashing SZEDER Gábor
2008-10-03 6:01 ` Jeff King
2008-10-03 9:33 ` rebase -i: remove leftover debugging SZEDER Gábor
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).