Thread (12 messages) 12 messages, 2 authors, 2023-08-10

Re: [PATCH 3/3] t/lib-rebase: improve documentation of set_fake_editor()

From: Phillip Wood <hidden>
Date: 2023-08-09 13:04:12

Hi Oswald

Thanks for splitting these patches up. We generally prefer commits 
message to be prose explaining the reason for the change rather than 
bullet points.

On 07/08/2023 18:09, Oswald Buddenhagen wrote:
- Make it reflect better what actually happens.
This makes it easier to
   fully exploit the possibilities and to modify the code.
I don't really see how this follows from the first sentence.
- Improve the structure, putting more general info further up.
Good idea
- Document `fakesha` and `break`.
Great
quoted hunk ↗ jump to hunk
Signed-off-by: Oswald Buddenhagen <redacted>
---
Cc: Phillip Wood <redacted>
---
  t/lib-rebase.sh | 21 ++++++++++++---------
  1 file changed, 12 insertions(+), 9 deletions(-)
diff --git a/t/lib-rebase.sh b/t/lib-rebase.sh
index 9ed87ca7ab..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>]", 
There is an inconsistency here in how we document fixup and merge. The 
former explicitly lists all possibilities and the latter uses a more 
compact notation. Note that we use docopt style descriptions for options 
so "{c|C}" would be written as "(c|C)". Also "merge -c/C" takes a 
commitish (which we could write as <rev>" rather than a hex object ID.

 > or "bad" for an invalid command.

This is a useful addition
-#   "<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.
Something like
	exec[_<command ...>]

would be more accurate I think

I think with a couple of tweaks this would be worthwhile improvement to 
the documentation. Having comprehensive coverage of all the commands is 
very welcome.

Thanks

Phillip
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help