All of lore.kernel.org
 help / color / mirror / Atom feed
From: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
To: git@vger.kernel.org
Subject: [PATCH] t/lib-rebase: (mostly) cosmetic improvements to set_fake_editor()
Date: Thu, 23 Mar 2023 17:22:34 +0100	[thread overview]
Message-ID: <20230323162234.995450-1-oswald.buddenhagen@gmx.de> (raw)

- Make the documentation reflect better what actually happens, and add
  some missing info
- Fix recognition of reset's short command in FAKE_LINES
- Default next action after 'fakesha' to preserving the command instead
  of forcing 'pick'. This is consistent with other "instant-effect"
  keywords.

Signed-off-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
---
 t/lib-rebase.sh | 25 ++++++++++++++-----------
 1 file changed, 14 insertions(+), 11 deletions(-)

diff --git a/t/lib-rebase.sh b/t/lib-rebase.sh
index 7ca5b918f0..184b25b427 100644
--- a/t/lib-rebase.sh
+++ b/t/lib-rebase.sh
@@ -8,18 +8,21 @@
 # - check that non-commit messages have a certain line count with $EXPECT_COUNT
 # - check the commit count in the commit message header with $EXPECT_HEADER_COUNT
 # - rewrite a rebase -i script as directed by $FAKE_LINES.
-#   $FAKE_LINES consists of a sequence of words separated by spaces.
-#   The following word combinations are possible:
+#   $FAKE_LINES consists of a sequence of words separated by spaces;
+#   spaces inside the words are encoded as underscores.
+#   The following words are possible:
 #
-#   "<lineno>" -- add a "pick" line with the SHA1 taken from the
-#       specified line.
+#   "<cmd>" -- override the command for the next line specification. Can be
+#       "pick", "squash", "fixup"|"fixup_-C"|"fixup_-c", "edit", "reword",
+#       "drop", "merge[_-{c|C}_<SHA1>]", or "bad" for an invalid command.
 #
-#   "<cmd> <lineno>" -- add a line with the specified command
-#       ("pick", "squash", "fixup"|"fixup_-C"|"fixup_-c", "edit", "reword" or "drop")
-#       and the SHA1 taken from the specified line.
+#   "<lineno>" -- add a command, using the specified line as a template.
+#       If the command has not been overridden, the line will be copied
+#       verbatim, usually resulting in a "pick" line.
 #
-#   "_" -- add a space, like "fixup_-C" implies "fixup -C" and
-#       "exec_cmd_with_args" add an "exec cmd with args" line.
+#   "fakesha" -- add a command ("pick" by default), using a fake SHA1.
+#
+#   "exec_[...]", "break" -- add the specified command.
 #
 #   "#" -- Add a comment line.
 #
@@ -49,7 +52,7 @@ set_fake_editor () {
 	action=\&
 	for line in $FAKE_LINES; do
 		case $line in
-		pick|p|squash|s|fixup|f|edit|e|reword|r|drop|d|label|l|reset|r|merge|m)
+		pick|p|squash|s|fixup|f|edit|e|reword|r|drop|d|label|l|reset|t|merge|m)
 			action="$line";;
 		exec_*|x_*|break|b)
 			echo "$line" | sed 's/_/ /g' >> "$1";;
@@ -64,7 +67,7 @@ set_fake_editor () {
 		fakesha)
 			test \& != "$action" || action=pick
 			echo "$action XXXXXXX False commit" >> "$1"
-			action=pick;;
+			action=\&;;
 		*)
 			sed -n "${line}s/^[a-z][a-z]*/$action/p" < "$1".tmp >> "$1"
 			action=\&;;
-- 
2.40.0.152.g15d061e6df


             reply	other threads:[~2023-03-23 16:47 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-23 16:22 Oswald Buddenhagen [this message]
2023-04-26 15:45 ` [PATCH] t/lib-rebase: (mostly) cosmetic improvements to set_fake_editor() Oswald Buddenhagen
2023-04-26 17:24   ` Junio C Hamano
2023-05-02 16:38     ` Felipe Contreras
2023-05-17  9:23 ` Phillip Wood
2023-08-07 17:09   ` [PATCH 0/3] " Oswald Buddenhagen
2023-08-07 17:09     ` [PATCH 1/3] t/lib-rebase: set_fake_editor(): fix recognition of reset's short command Oswald Buddenhagen
2023-08-07 19:00       ` Junio C Hamano
2023-08-07 17:09     ` [PATCH 2/3] t/lib-rebase: set_fake_editor(): handle FAKE_LINES more consistently Oswald Buddenhagen
2023-08-07 19:09       ` Junio C Hamano
2023-08-07 17:09     ` [PATCH 3/3] t/lib-rebase: improve documentation of set_fake_editor() Oswald Buddenhagen
2023-08-09 13:04       ` Phillip Wood
2023-08-09 17:15         ` [PATCH v2 0/1] t/lib-rebase: (mostly) cosmetic improvements to set_fake_editor() Oswald Buddenhagen
2023-08-09 17:15           ` [PATCH v2 1/1] t/lib-rebase: improve documentation of set_fake_editor() Oswald Buddenhagen
2023-08-09 19:38             ` Junio C Hamano
2023-08-10 14:37             ` Phillip Wood
2023-08-10 15:49               ` Junio C Hamano
2023-08-09 21:15           ` [PATCH v2 0/1] t/lib-rebase: (mostly) cosmetic improvements to set_fake_editor() Junio C Hamano
2023-08-10 10:42             ` Oswald Buddenhagen
2023-08-10 16:00               ` Junio C Hamano
2023-08-10 23:57                 ` Junio C Hamano
2023-08-09 13:05     ` [PATCH 0/3] " Phillip Wood

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20230323162234.995450-1-oswald.buddenhagen@gmx.de \
    --to=oswald.buddenhagen@gmx.de \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.