Johannes Schindelin [off-list ref] writes:
When you do many rebases, you can get annoyed by having to type out
the actions "edit" or "squash" in total.
This commit helps that, by allowing you to enter "e" instead of "edit",
or "s" instead of "squash", and it also plays nice with "merge" or "amend"
as synonyms to "squash".
I am not sure if we want to taint the words merge and amend like
this. I was hoping someday you would allow people to reorder
something like this...
e
\
---a---b---c---d
into something like this:
e
\
---b'--c'--a'+d'
The insn sequence you prepare for the user to edit would be:
pick a
pick b
merge c
pick d
and then the user would rewrite that to:
pick b
merge c
pick a
squash d
I do not think making 'amend' a synonym to 'squash' is correct
either; isn't it closer to 'edit'?
I however do agree that giving short-hand would be a good idea.
When you do many rebases, you can get annoyed by having to type out
the actions "edit" or "squash" in total.
This commit helps that, by allowing you to enter "e" instead of "edit",
"p" instead of "pick", or "s" instead of "squash".
Signed-off-by: Johannes Schindelin <redacted>
---
On Fri, 28 Sep 2007, Junio C Hamano wrote:
> I am not sure if we want to taint the words merge and amend like
> this. I was hoping someday you would allow people to reorder
> something like this...
Okay, you convinced me.
>
> e
> \
> ---a---b---c---d
>
> into something like this:
>
> e
> \
> ---b'--c'--a'+d'
I thought that this would be possible with "git rebase -p -i"?
Ah no, that does not work; "-p" is not yet graceful enough to
accept reorders. (But then, I do not see why the command should
be "merge" instead of the "pick" we already have...)
git-rebase--interactive.sh | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/git-rebase--interactive.sh b/git-rebase--interactive.sh
index 823291d..7a5aaa5 100755
--- a/git-rebase--interactive.sh
+++ b/git-rebase--interactive.sh
@@ -232,14 +232,14 @@ do_next () {
'#'*|'')
mark_action_done
;;
- pick)
+ pick|p)
comment_for_reflog pick
mark_action_done
pick_one $sha1 ||
die_with_patch $sha1 "Could not apply $sha1... $rest"
;;
- edit)
+ edit|e)
comment_for_reflog edit
mark_action_done@@ -254,7 +254,7 @@ do_next () {
warn
exit 0
;;
- squash)
+ squash|s)
comment_for_reflog squash
has_action "$DONE" ||@@ -263,7 +263,7 @@ do_next () {
mark_action_done
make_squash_message $sha1 > "$MSG"
case "$(peek_next_command)" in
- squash)
+ squash|s)
EDIT_COMMIT=
USE_OUTPUT=output
cp "$MSG" "$SQUASH_MSG"--
1.5.3.2.1102.g9487