* [PATCH 1/5] doc: convert git-bisect to synopsis style
2026-05-17 20:26 [PATCH 0/5] doc: convert another batch of files to synopsis style Jean-Noël Avila via GitGitGadget
@ 2026-05-17 20:26 ` Jean-Noël Avila via GitGitGadget
2026-05-18 0:26 ` Junio C Hamano
2026-05-17 20:26 ` [PATCH 2/5] doc: convert git-grep synopsis and options to new style Jean-Noël Avila via GitGitGadget
` (3 subsequent siblings)
4 siblings, 1 reply; 8+ messages in thread
From: Jean-Noël Avila via GitGitGadget @ 2026-05-17 20:26 UTC (permalink / raw)
To: git; +Cc: Jean-Noël Avila, Jean-Noël Avila
From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <jn.avila@free.fr>
Convert Documentation/git-bisect.adoc to the modern synopsis style.
- Replace [verse] with [synopsis] in the SYNOPSIS block
- Remove single quotes around command names in the synopsis
- Use backticks for inline commands, options, refs, and special values
- Apply [synopsis] attribute to in-body command-form code blocks
- Format OPTIONS entries with backtick-quoted terms and direct
- Add synopsis-style formatting to listing blocks
- Format man page references as `command`(N)
Signed-off-by: Jean-Noël Avila <jn.avila@free.fr>
---
Documentation/asciidoc.conf.in | 6 +++
Documentation/git-bisect.adoc | 80 ++++++++++++++++++----------------
2 files changed, 48 insertions(+), 38 deletions(-)
diff --git a/Documentation/asciidoc.conf.in b/Documentation/asciidoc.conf.in
index 31b883a72c..93c63b284a 100644
--- a/Documentation/asciidoc.conf.in
+++ b/Documentation/asciidoc.conf.in
@@ -84,6 +84,9 @@ ifdef::doctype-manpage[]
[blockdef-open]
synopsis-style=template="verseparagraph",filter="sed 's!…\\(\\]\\|$\\)!<phrase>\\0</phrase>!g;s!\\([\\[ |()]\\|^\\|\\]\\|>\\)\\([-=a-zA-Z0-9:+@,\\/_^\\$.\\\\\\*]\\+\\|…\\)!\\1<literal>\\2</literal>!g;s!<[-a-zA-Z0-9.]\\+>!<emphasis>\\0</emphasis>!g'"
+[blockdef-listing]
+synopsis-style=template="verseparagraph",filter="sed 's!…\\(\\]\\|$\\)!<phrase>\\0</phrase>!g;s!\\([\\[ |()]\\|^\\|\\]\\|>\\)\\([-=a-zA-Z0-9:+@,\\/_^\\$.\\\\\\*]\\+\\|…\\)!\\1<literal>\\2</literal>!g;s!<[-a-zA-Z0-9.]\\+>!<emphasis>\\0</emphasis>!g'"
+
[paradef-default]
synopsis-style=template="verseparagraph",filter="sed 's!…\\(\\]\\|$\\)!<phrase>\\0</phrase>!g;s!\\([\\[ |()]\\|^\\|\\]\\|>\\)\\([-=a-zA-Z0-9:+@,\\/_^\\$.\\\\\\*]\\+\\|…\\)!\\1<literal>\\2</literal>!g;s!<[-a-zA-Z0-9.]\\+>!<emphasis>\\0</emphasis>!g'"
endif::doctype-manpage[]
@@ -93,6 +96,9 @@ ifdef::backend-xhtml11[]
[blockdef-open]
synopsis-style=template="verseparagraph",filter="sed 's!…\\(\\]\\|$\\)!<span>\\0</span>!g;s!\\([\\[ |()]\\|^\\|\\]\\|>\\)\\([-=a-zA-Z0-9:+@,\\/_^\\$.\\\\\\*]\\+\\|…\\)!\\1<code>\\2</code>!g;s!<[-a-zA-Z0-9.]\\+>!<em>\\0</em>!g'"
+[blockdef-listing]
+synopsis-style=template="verseparagraph",filter="sed 's!…\\(\\]\\|$\\)!<span>\\0</span>!g;s!\\([\\[ |()]\\|^\\|\\]\\|>\\)\\([-=a-zA-Z0-9:+@,\\/_^\\$.\\\\\\*]\\+\\|…\\)!\\1<code>\\2</code>!g;s!<[-a-zA-Z0-9.]\\+>!<em>\\0</em>!g'"
+
[paradef-default]
synopsis-style=template="verseparagraph",filter="sed 's!…\\(\\]\\|$\\)!<span>\\0</span>!g;s!\\([\\[ |()]\\|^\\|\\]\\|>\\)\\([-=a-zA-Z0-9:+@,\\/_^\\$.\\\\\\*]\\+\\|…\\)!\\1<code>\\2</code>!g;s!<[-a-zA-Z0-9.]\\+>!<em>\\0</em>!g'"
endif::backend-xhtml11[]
diff --git a/Documentation/git-bisect.adoc b/Documentation/git-bisect.adoc
index b0078dda0e..9a3b7b3cdb 100644
--- a/Documentation/git-bisect.adoc
+++ b/Documentation/git-bisect.adoc
@@ -8,20 +8,20 @@ git-bisect - Use binary search to find the commit that introduced a bug
SYNOPSIS
--------
-[verse]
-'git bisect' start [--term-(bad|new)=<term-new> --term-(good|old)=<term-old>]
- [--no-checkout] [--first-parent] [<bad> [<good>...]] [--] [<pathspec>...]
-'git bisect' (bad|new|<term-new>) [<rev>]
-'git bisect' (good|old|<term-old>) [<rev>...]
-'git bisect' terms [--term-(good|old) | --term-(bad|new)]
-'git bisect' skip [(<rev>|<range>)...]
-'git bisect' next
-'git bisect' reset [<commit>]
-'git bisect' (visualize|view)
-'git bisect' replay <logfile>
-'git bisect' log
-'git bisect' run <cmd> [<arg>...]
-'git bisect' help
+[synopsis]
+git bisect start [--term-(bad|new)=<term-new> --term-(good|old)=<term-old>]
+ [--no-checkout] [--first-parent] [<bad> [<good>...]] [--] [<pathspec>...]
+git bisect (bad|new|<term-new>) [<rev>]
+git bisect (good|old|<term-old>) [<rev>...]
+git bisect terms [--term-(good|old) | --term-(bad|new)]
+git bisect skip [(<rev>|<range>)...]
+git bisect next
+git bisect reset [<commit>]
+git bisect (visualize|view)
+git bisect replay <logfile>
+git bisect log
+git bisect run <cmd> [<arg>...]
+git bisect help
DESCRIPTION
-----------
@@ -94,7 +94,7 @@ Bisect reset
~~~~~~~~~~~~
After a bisect session, to clean up the bisection state and return to
-the original HEAD, issue the following command:
+the original `HEAD`, issue the following command:
------------------------------------------------
$ git bisect reset
@@ -107,6 +107,7 @@ that, as it cleans up the old bisection state.)
With an optional argument, you can return to a different commit
instead:
+[synopsis]
------------------------------------------------
$ git bisect reset <commit>
------------------------------------------------
@@ -143,12 +144,14 @@ To use "old" and "new" instead of "good" and bad, you must run `git
bisect start` without commits as argument and then run the following
commands to add the commits:
+[synopsis]
------------------------------------------------
git bisect old [<rev>]
------------------------------------------------
to indicate that a commit was before the sought change, or
+[synopsis]
------------------------------------------------
git bisect new [<rev>...]
------------------------------------------------
@@ -157,6 +160,7 @@ to indicate that it was after.
To get a reminder of the currently used terms, use
+[synopsis]
------------------------------------------------
git bisect terms
------------------------------------------------
@@ -171,6 +175,7 @@ If you would like to use your own terms instead of "bad"/"good" or
subcommands like `reset`, `start`, ...) by starting the
bisection using
+[synopsis]
------------------------------------------------
git bisect start --term-old <term-old> --term-new <term-new>
------------------------------------------------
@@ -194,7 +199,7 @@ of `git bisect good` and `git bisect bad` to mark commits.
Bisect visualize/view
~~~~~~~~~~~~~~~~~~~~~
-To see the currently remaining suspects in 'gitk', issue the following
+To see the currently remaining suspects in `gitk`, issue the following
command during the bisection process (the subcommand `view` can be used
as an alternative to `visualize`):
@@ -203,12 +208,13 @@ $ git bisect visualize
------------
Git detects a graphical environment through various environment variables:
-`DISPLAY`, which is set in X Window System environments on Unix systems.
-`SESSIONNAME`, which is set under Cygwin in interactive desktop sessions.
-`MSYSTEM`, which is set under Msys2 and Git for Windows.
-`SECURITYSESSIONID`, which may be set on macOS in interactive desktop sessions.
-If none of these environment variables is set, 'git log' is used instead.
+`DISPLAY`:: which is set in X Window System environments on Unix systems.
+`SESSIONNAME`:: which is set under Cygwin in interactive desktop sessions.
+`MSYSTEM`:: which is set under Msys2 and Git for Windows.
+`SECURITYSESSIONID`:: which may be set on macOS in interactive desktop sessions.
+
+If none of these environment variables is set, `git log` is used instead.
You can also give command-line options such as `-p` and `--stat`.
------------
@@ -342,8 +348,8 @@ code between 1 and 127 (inclusive), except 125, if the current source
code is bad/new.
Any other exit code will abort the bisect process. It should be noted
-that a program that terminates via `exit(-1)` leaves $? = 255, (see the
-exit(3) manual page), as the value is chopped with `& 0377`.
+that a program that terminates via `exit(-1)` leaves `$?` = 255, (see the
+`exit`(3) manual page), as the value is chopped with `& 0377`.
The special exit code 125 should be used when the current source code
cannot be tested. If the script exits with this code, the current
@@ -355,12 +361,12 @@ details do not matter, as they are normal errors in the script, as far as
`bisect run` is concerned).
You may often find that during a bisect session you want to have
-temporary modifications (e.g. s/#define DEBUG 0/#define DEBUG 1/ in a
+temporary modifications (e.g. `s/#define DEBUG 0/#define DEBUG 1/` in a
header file, or "revision that does not have this commit needs this
patch applied to work around another problem this bisection is not
interested in") applied to the revision being tested.
-To cope with such a situation, after the inner 'git bisect' finds the
+To cope with such a situation, after the inner `git bisect` finds the
next revision to test, the script can apply the patch
before compiling, run the real test, and afterwards decide if the
revision (possibly with the needed patch) passed the test and then
@@ -370,20 +376,18 @@ determine the eventual outcome of the bisect session.
OPTIONS
-------
---no-checkout::
-+
-Do not checkout the new working tree at each iteration of the bisection
-process. Instead just update the reference named `BISECT_HEAD` to make
-it point to the commit that should be tested.
+`--no-checkout`::
+ Do not checkout the new working tree at each iteration of the bisection
+ process. Instead just update the reference named `BISECT_HEAD` to make
+ it point to the commit that should be tested.
+
This option may be useful when the test you would perform in each step
does not require a checked out tree.
+
If the repository is bare, `--no-checkout` is assumed.
---first-parent::
-+
-Follow only the first parent commit upon seeing a merge commit.
+`--first-parent`::
+ Follow only the first parent commit upon seeing a merge commit.
+
In detecting regressions introduced through the merging of a branch, the merge
commit will be identified as introduction of the bug and its ancestors will be
@@ -395,7 +399,7 @@ branch contained broken or non-buildable commits, but the merge itself was OK.
EXAMPLES
--------
-* Automatically bisect a broken build between v1.2 and HEAD:
+* Automatically bisect a broken build between v1.2 and `HEAD`:
+
------------
$ git bisect start HEAD v1.2 -- # HEAD is bad, v1.2 is good
@@ -403,7 +407,7 @@ $ git bisect run make # "make" builds the app
$ git bisect reset # quit the bisect session
------------
-* Automatically bisect a test failure between origin and HEAD:
+* Automatically bisect a test failure between origin and `HEAD`:
+
------------
$ git bisect start HEAD origin -- # HEAD is bad, origin is good
@@ -430,7 +434,7 @@ and `exit 1` otherwise.
+
It is safer if both `test.sh` and `check_test_case.sh` are
outside the repository to prevent interactions between the bisect,
-make and test processes and the scripts.
+`make` and test processes and the scripts.
* Automatically bisect with temporary modifications (hot-fix):
+
@@ -491,9 +495,9 @@ $ git bisect run sh -c '
$ git bisect reset # quit the bisect session
------------
+
-In this case, when 'git bisect run' finishes, bisect/bad will refer to a commit that
+In this case, when `git bisect run` finishes, `bisect/bad` will refer to a commit that
has at least one parent whose reachable graph is fully traversable in the sense
-required by 'git pack objects'.
+required by `git pack-objects`.
* Look for a fix instead of a regression in the code
+
--
gitgitgadget
^ permalink raw reply related [flat|nested] 8+ messages in thread* Re: [PATCH 1/5] doc: convert git-bisect to synopsis style
2026-05-17 20:26 ` [PATCH 1/5] doc: convert git-bisect " Jean-Noël Avila via GitGitGadget
@ 2026-05-18 0:26 ` Junio C Hamano
2026-05-18 2:10 ` Junio C Hamano
0 siblings, 1 reply; 8+ messages in thread
From: Junio C Hamano @ 2026-05-18 0:26 UTC (permalink / raw)
To: Jean-Noël Avila via GitGitGadget; +Cc: git, Jean-Noël Avila
"Jean-Noël Avila via GitGitGadget" <gitgitgadget@gmail.com> writes:
> From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <jn.avila@free.fr>
>
> Convert Documentation/git-bisect.adoc to the modern synopsis style.
>
> - Replace [verse] with [synopsis] in the SYNOPSIS block
This was expected.
> - Remove single quotes around command names in the synopsis
> - Use backticks for inline commands, options, refs, and special values
> - Apply [synopsis] attribute to in-body command-form code blocks
This is very much unexpected. I think everybody thought [synopsis]
was invented to be used for the SYNOPSIS section at the beginning of
each manual page, and ...
> SYNOPSIS
> --------
> -[verse]
> -'git bisect' start [--term-(bad|new)=<term-new> --term-(good|old)=<term-old>]
> - [--no-checkout] [--first-parent] [<bad> [<good>...]] [--] [<pathspec>...]
> ...
> -'git bisect' help
> +[synopsis]
> +git bisect start [--term-(bad|new)=<term-new> --term-(good|old)=<term-old>]
> + [--no-checkout] [--first-parent] [<bad> [<good>...]] [--] [<pathspec>...]
> ...
> +git bisect help
... a change like this is very much expected and understandable, but
new appearances of [synonsis] in places like:
> +[synopsis]
> ------------------------------------------------
> $ git bisect reset <commit>
> ------------------------------------------------
and
> +[synopsis]
> ------------------------------------------------
> git bisect old [<rev>]
> ------------------------------------------------
were a bit surprising and confusing. They are not exactly command
syntax definitions (which is the SYNOPSIS section is about), but
examples of usage. The one with '$' command line prompt feels
particularly confusing, as the prompt is not something that the
end-user gives, unlike what we write in the synopsis section.
Other than that, this is quite exciting.
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 1/5] doc: convert git-bisect to synopsis style
2026-05-18 0:26 ` Junio C Hamano
@ 2026-05-18 2:10 ` Junio C Hamano
0 siblings, 0 replies; 8+ messages in thread
From: Junio C Hamano @ 2026-05-18 2:10 UTC (permalink / raw)
To: Jean-Noël Avila via GitGitGadget; +Cc: git, Jean-Noël Avila
Junio C Hamano <gitster@pobox.com> writes:
>> +[synopsis]
>> ------------------------------------------------
>> $ git bisect reset <commit>
>> ------------------------------------------------
>
> and
>
>> +[synopsis]
>> ------------------------------------------------
>> git bisect old [<rev>]
>> ------------------------------------------------
>
> were a bit surprising and confusing. They are not exactly command
> syntax definitions (which is the SYNOPSIS section is about), but
> examples of usage. The one with '$' command line prompt feels
> particularly confusing, as the prompt is not something that the
> end-user gives, unlike what we write in the synopsis section.
>
> Other than that, this is quite exciting.
Well, my local test with asciidoctor did not barf, but it seems that
the documentation pipeline run in GitHub Actions CI is unhappy.
https://github.com/git/git/actions/runs/26008649802/job/76444895183#step:4:4846
I do not know what the differences among the three environments
(counting your development environment---only one of which fails)
are offhand.
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 2/5] doc: convert git-grep synopsis and options to new style
2026-05-17 20:26 [PATCH 0/5] doc: convert another batch of files to synopsis style Jean-Noël Avila via GitGitGadget
2026-05-17 20:26 ` [PATCH 1/5] doc: convert git-bisect " Jean-Noël Avila via GitGitGadget
@ 2026-05-17 20:26 ` Jean-Noël Avila via GitGitGadget
2026-05-17 20:26 ` [PATCH 3/5] doc: convert git-am " Jean-Noël Avila via GitGitGadget
` (2 subsequent siblings)
4 siblings, 0 replies; 8+ messages in thread
From: Jean-Noël Avila via GitGitGadget @ 2026-05-17 20:26 UTC (permalink / raw)
To: git; +Cc: Jean-Noël Avila, Jean-Noël Avila
From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <jn.avila@free.fr>
Convert git-grep.adoc from [verse]/single-quote style to the modern
synopsis-block style:
- Replace [verse] with [synopsis] in SYNOPSIS block
- Change 'git grep' to git grep (no single quotes)
- Backtick-quote all OPTIONS terms
- Convert inline man page refs: grep(1) -> `grep`(1)
- Convert inline command refs: 'git diff' -> `git diff`
- Convert prose placeholders: <file> -> _<file>_
Signed-off-by: Jean-Noël Avila <jn.avila@free.fr>
---
Documentation/config/grep.adoc | 36 +++---
Documentation/git-grep.adoc | 196 ++++++++++++++++-----------------
2 files changed, 116 insertions(+), 116 deletions(-)
diff --git a/Documentation/config/grep.adoc b/Documentation/config/grep.adoc
index 10041f27b0..83d4b76dd3 100644
--- a/Documentation/config/grep.adoc
+++ b/Documentation/config/grep.adoc
@@ -1,28 +1,28 @@
-grep.lineNumber::
- If set to true, enable `-n` option by default.
+`grep.lineNumber`::
+ If set to `true`, enable `-n` option by default.
-grep.column::
- If set to true, enable the `--column` option by default.
+`grep.column`::
+ If set to `true`, enable the `--column` option by default.
-grep.patternType::
- Set the default matching behavior. Using a value of 'basic', 'extended',
- 'fixed', or 'perl' will enable the `--basic-regexp`, `--extended-regexp`,
+`grep.patternType`::
+ Set the default matching behavior. Using a value of `basic`, `extended`,
+ `fixed`, or `perl` will enable the `--basic-regexp`, `--extended-regexp`,
`--fixed-strings`, or `--perl-regexp` option accordingly, while the
- value 'default' will use the `grep.extendedRegexp` option to choose
- between 'basic' and 'extended'.
+ value `default` will use the `grep.extendedRegexp` option to choose
+ between `basic` and `extended`.
-grep.extendedRegexp::
- If set to true, enable `--extended-regexp` option by default. This
+`grep.extendedRegexp`::
+ If set to `true`, enable `--extended-regexp` option by default. This
option is ignored when the `grep.patternType` option is set to a value
- other than 'default'.
+ other than `default`.
-grep.threads::
+`grep.threads`::
Number of grep worker threads to use. If unset (or set to 0), Git will
use as many threads as the number of logical cores available.
-grep.fullName::
- If set to true, enable `--full-name` option by default.
+`grep.fullName`::
+ If set to `true`, enable `--full-name` option by default.
-grep.fallbackToNoIndex::
- If set to true, fall back to `git grep --no-index` if `git grep`
- is executed outside of a git repository. Defaults to false.
+`grep.fallbackToNoIndex`::
+ If set to `true`, fall back to `git grep --no-index` if `git grep`
+ is executed outside of a git repository. Defaults to `false`.
diff --git a/Documentation/git-grep.adoc b/Documentation/git-grep.adoc
index a548585d4c..19b3ade16d 100644
--- a/Documentation/git-grep.adoc
+++ b/Documentation/git-grep.adoc
@@ -8,8 +8,8 @@ git-grep - Print lines matching a pattern
SYNOPSIS
--------
-[verse]
-'git grep' [-a | --text] [-I] [--textconv] [-i | --ignore-case] [-w | --word-regexp]
+[synopsis]
+git grep [-a | --text] [-I] [--textconv] [-i | --ignore-case] [-w | --word-regexp]
[-v | --invert-match] [-h|-H] [--full-name]
[-E | --extended-regexp] [-G | --basic-regexp]
[-P | --perl-regexp]
@@ -41,139 +41,139 @@ characters. An empty string as search expression matches all lines.
OPTIONS
-------
---cached::
+`--cached`::
Instead of searching tracked files in the working tree, search
blobs registered in the index file.
---untracked::
+`--untracked`::
In addition to searching in the tracked files in the working
tree, search also in untracked files.
---no-index::
+`--no-index`::
Search files in the current directory that is not managed by Git,
or by ignoring that the current directory is managed by Git. This
- is rather similar to running the regular `grep(1)` utility with its
+ is rather similar to running the regular `grep`(1) utility with its
`-r` option specified, but with some additional benefits, such as
- using pathspec patterns to limit paths; see the 'pathspec' entry
+ using pathspec patterns to limit paths; see the `pathspec` entry
in linkgit:gitglossary[7] for more information.
+
This option cannot be used together with `--cached` or `--untracked`.
See also `grep.fallbackToNoIndex` in 'CONFIGURATION' below.
---no-exclude-standard::
+`--no-exclude-standard`::
Also search in ignored files by not honoring the `.gitignore`
mechanism. Only useful with `--untracked`.
---exclude-standard::
+`--exclude-standard`::
Do not pay attention to ignored files specified via the `.gitignore`
mechanism. Only useful when searching files in the current directory
with `--no-index`.
---recurse-submodules::
+`--recurse-submodules`::
Recursively search in each submodule that is active and
checked out in the repository. When used in combination with the
_<tree>_ option the prefix of all submodule output will be the name of
the parent project's _<tree>_ object. This option cannot be used together
with `--untracked`, and it has no effect if `--no-index` is specified.
--a::
---text::
+`-a`::
+`--text`::
Process binary files as if they were text.
---textconv::
+`--textconv`::
Honor textconv filter settings.
---no-textconv::
+`--no-textconv`::
Do not honor textconv filter settings.
This is the default.
--i::
---ignore-case::
+`-i`::
+`--ignore-case`::
Ignore case differences between the patterns and the
files.
--I::
+`-I`::
Don't match the pattern in binary files.
---max-depth <depth>::
- For each <pathspec> given on command line, descend at most <depth>
+`--max-depth <depth>`::
+ For each _<pathspec>_ given on command line, descend at most _<depth>_
levels of directories. A value of -1 means no limit.
- This option is ignored if <pathspec> contains active wildcards.
+ This option is ignored if _<pathspec>_ contains active wildcards.
In other words if "a*" matches a directory named "a*",
- "*" is matched literally so --max-depth is still effective.
+ "*" is matched literally so `--max-depth` is still effective.
--r::
---recursive::
+`-r`::
+`--recursive`::
Same as `--max-depth=-1`; this is the default.
---no-recursive::
+`--no-recursive`::
Same as `--max-depth=0`.
--w::
---word-regexp::
+`-w`::
+`--word-regexp`::
Match the pattern only at word boundary (either begin at the
beginning of a line, or preceded by a non-word character; end at
the end of a line or followed by a non-word character).
--v::
---invert-match::
+`-v`::
+`--invert-match`::
Select non-matching lines.
--h::
--H::
+`-h`::
+`-H`::
By default, the command shows the filename for each
match. `-h` option is used to suppress this output.
`-H` is there for completeness and does not do anything
except it overrides `-h` given earlier on the command
line.
---full-name::
+`--full-name`::
When run from a subdirectory, the command usually
outputs paths relative to the current directory. This
option forces paths to be output relative to the project
top directory.
--E::
---extended-regexp::
--G::
---basic-regexp::
+`-E`::
+`--extended-regexp`::
+`-G`::
+`--basic-regexp`::
Use POSIX extended/basic regexp for patterns. Default
is to use basic regexp.
--P::
---perl-regexp::
+`-P`::
+`--perl-regexp`::
Use Perl-compatible regular expressions for patterns.
+
Support for these types of regular expressions is an optional
compile-time dependency. If Git wasn't compiled with support for them
providing this option will cause it to die.
--F::
---fixed-strings::
+`-F`::
+`--fixed-strings`::
Use fixed strings for patterns (don't interpret pattern
as a regex).
--n::
---line-number::
+`-n`::
+`--line-number`::
Prefix the line number to matching lines.
---column::
+`--column`::
Prefix the 1-indexed byte-offset of the first match from the start of the
matching line.
--l::
---files-with-matches::
---name-only::
--L::
---files-without-match::
+`-l`::
+`--files-with-matches`::
+`--name-only`::
+`-L`::
+`--files-without-match`::
Instead of showing every matched line, show only the
names of files that contain (or do not contain) matches.
- For better compatibility with 'git diff', `--name-only` is a
+ For better compatibility with `git diff`, `--name-only` is a
synonym for `--files-with-matches`.
--O[<pager>]::
---open-files-in-pager[=<pager>]::
- Open the matching files in the pager (not the output of 'grep').
+`-O[<pager>]`::
+`--open-files-in-pager[=<pager>]`::
+ Open the matching files in the pager (not the output of `grep`).
If the pager happens to be "less" or "vi", and the user
specified only one pattern, the first file is positioned at
the first match automatically. The `pager` argument is
@@ -181,65 +181,65 @@ providing this option will cause it to die.
without a space. If `pager` is unspecified, the default pager
will be used (see `core.pager` in linkgit:git-config[1]).
--z::
---null::
+`-z`::
+`--null`::
Use \0 as the delimiter for pathnames in the output, and print
them verbatim. Without this option, pathnames with "unusual"
characters are quoted as explained for the configuration
variable `core.quotePath` (see linkgit:git-config[1]).
--o::
---only-matching::
+`-o`::
+`--only-matching`::
Print only the matched (non-empty) parts of a matching line, with each such
part on a separate output line.
--c::
---count::
+`-c`::
+`--count`::
Instead of showing every matched line, show the number of
lines that match.
---color[=<when>]::
+`--color[=<when>]`::
Show colored matches.
- The value must be always (the default), never, or auto.
+ The value must be `always` (the default), `never`, or `auto`.
---no-color::
+`--no-color`::
Turn off match highlighting, even when the configuration file
gives the default to color output.
Same as `--color=never`.
---break::
+`--break`::
Print an empty line between matches from different files.
---heading::
+`--heading`::
Show the filename above the matches in that file instead of
at the start of each shown line.
--p::
---show-function::
+`-p`::
+`--show-function`::
Show the preceding line that contains the function name of
the match, unless the matching line is a function name itself.
The name is determined in the same way as `git diff` works out
patch hunk headers (see 'Defining a custom hunk-header' in
linkgit:gitattributes[5]).
--<num>::
--C <num>::
---context <num>::
- Show <num> leading and trailing lines, and place a line
+`-<num>`::
+`-C <num>`::
+`--context <num>`::
+ Show _<num>_ leading and trailing lines, and place a line
containing `--` between contiguous groups of matches.
--A <num>::
---after-context <num>::
- Show <num> trailing lines, and place a line containing
+`-A <num>`::
+`--after-context <num>`::
+ Show _<num>_ trailing lines, and place a line containing
`--` between contiguous groups of matches.
--B <num>::
---before-context <num>::
- Show <num> leading lines, and place a line containing
+`-B <num>`::
+`--before-context <num>`::
+ Show _<num>_ leading lines, and place a line containing
`--` between contiguous groups of matches.
--W::
---function-context::
+`-W`::
+`--function-context`::
Show the surrounding text from the previous line containing a
function name up to the one before the next function name,
effectively showing the whole function in which the match was
@@ -247,22 +247,22 @@ providing this option will cause it to die.
`git diff` works out patch hunk headers (see 'Defining a
custom hunk-header' in linkgit:gitattributes[5]).
--m <num>::
---max-count <num>::
+`-m <num>`::
+`--max-count <num>`::
Limit the amount of matches per file. When using the `-v` or
`--invert-match` option, the search stops after the specified
number of non-matches. A value of -1 will return unlimited
results (the default). A value of 0 will exit immediately with
a non-zero status.
---threads <num>::
- Number of `grep` worker threads to use. See 'NOTES ON THREADS'
+`--threads <num>`::
+ Number of `grep` worker threads to use. See `NOTES ON THREADS`
and `grep.threads` in 'CONFIGURATION' for more information.
--f <file>::
- Read patterns from <file>, one per line.
+`-f <file>`::
+ Read patterns from _<file>_, one per line.
+
-Passing the pattern via <file> allows for providing a search pattern
+Passing the pattern via _<file>_ allows for providing a search pattern
containing a \0.
+
Not all pattern types support patterns containing \0. Git will error
@@ -279,44 +279,44 @@ In future versions we may learn to support patterns containing \0 for
more search backends, until then we'll die when the pattern type in
question doesn't support them.
--e::
+`-e`::
The next parameter is the pattern. This option has to be
used for patterns starting with `-` and should be used in
scripts passing user input to grep. Multiple patterns are
- combined by 'or'.
+ combined by `or`.
---and::
---or::
---not::
-( ... )::
+`--and`::
+`--or`::
+`--not`::
+`( ... )`::
Specify how multiple patterns are combined using Boolean
expressions. `--or` is the default operator. `--and` has
higher precedence than `--or`. `-e` has to be used for all
patterns.
---all-match::
+`--all-match`::
When giving multiple pattern expressions combined with `--or`,
this flag is specified to limit the match to files that
have lines to match all of them.
--q::
---quiet::
+`-q`::
+`--quiet`::
Do not output matched lines; instead, exit with status 0 when
there is a match and with non-zero status when there isn't.
-<tree>...::
+`<tree>...`::
Instead of searching tracked files in the working tree, search
blobs in the given trees.
-\--::
+`--`::
Signals the end of options; the rest of the parameters
- are <pathspec> limiters.
+ are _<pathspec>_ limiters.
-<pathspec>...::
+`<pathspec>...`::
If given, limit the search to paths matching at least one pattern.
- Both leading paths match and glob(7) patterns are supported.
+ Both leading paths match and `glob`(7) patterns are supported.
+
-For more details about the <pathspec> syntax, see the 'pathspec' entry
+For more details about the _<pathspec>_ syntax, see the `pathspec` entry
in linkgit:gitglossary[7].
EXAMPLES
--
gitgitgadget
^ permalink raw reply related [flat|nested] 8+ messages in thread* [PATCH 3/5] doc: convert git-am synopsis and options to new style
2026-05-17 20:26 [PATCH 0/5] doc: convert another batch of files to synopsis style Jean-Noël Avila via GitGitGadget
2026-05-17 20:26 ` [PATCH 1/5] doc: convert git-bisect " Jean-Noël Avila via GitGitGadget
2026-05-17 20:26 ` [PATCH 2/5] doc: convert git-grep synopsis and options to new style Jean-Noël Avila via GitGitGadget
@ 2026-05-17 20:26 ` Jean-Noël Avila via GitGitGadget
2026-05-17 20:26 ` [PATCH 4/5] doc: convert git-apply " Jean-Noël Avila via GitGitGadget
2026-05-17 20:26 ` [PATCH 5/5] doc: convert git-imap-send " Jean-Noël Avila via GitGitGadget
4 siblings, 0 replies; 8+ messages in thread
From: Jean-Noël Avila via GitGitGadget @ 2026-05-17 20:26 UTC (permalink / raw)
To: git; +Cc: Jean-Noël Avila, Jean-Noël Avila
From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <jn.avila@free.fr>
Convert git-am from [verse]/single-quote style to the modern
synopsis-block style:
- Replace [verse] with [synopsis] in SYNOPSIS block
- Backtick-quote all OPTIONS terms
- Convert inline man page refs
- Convert inline command refs
- Convert prose placeholders:
Signed-off-by: Jean-Noël Avila <jn.avila@free.fr>
---
Documentation/config/am.adoc | 6 +-
Documentation/format-patch-caveats.adoc | 2 +-
.../format-patch-end-of-commit-message.adoc | 4 +-
Documentation/git-am.adoc | 132 +++++++++---------
4 files changed, 72 insertions(+), 72 deletions(-)
diff --git a/Documentation/config/am.adoc b/Documentation/config/am.adoc
index e9561e12d7..250e6b5047 100644
--- a/Documentation/config/am.adoc
+++ b/Documentation/config/am.adoc
@@ -1,11 +1,11 @@
-am.keepcr::
+`am.keepcr`::
If true, linkgit:git-am[1] will call linkgit:git-mailsplit[1]
for patches in mbox format with parameter `--keep-cr`. In this
case linkgit:git-mailsplit[1] will
not remove `\r` from lines ending with `\r\n`. Can be overridden
by giving `--no-keep-cr` from the command line.
-am.threeWay::
+`am.threeWay`::
By default, linkgit:git-am[1] will fail if the patch does not
apply cleanly. When set to true, this setting tells
linkgit:git-am[1] to fall back on 3-way merge if the patch
@@ -13,7 +13,7 @@ am.threeWay::
have those blobs available locally (equivalent to giving the
`--3way` option from the command line). Defaults to `false`.
-am.messageId::
+`am.messageId`::
Add a `Message-ID` trailer based on the email header to the
commit when using linkgit:git-am[1] (see
linkgit:git-interpret-trailers[1]). See also the `--message-id`
diff --git a/Documentation/format-patch-caveats.adoc b/Documentation/format-patch-caveats.adoc
index 807a65b885..133e4757e7 100644
--- a/Documentation/format-patch-caveats.adoc
+++ b/Documentation/format-patch-caveats.adoc
@@ -28,6 +28,6 @@ repositories. This goes to show that this behavior does not only impact
email workflows.
Given these limitations, one might be tempted to use a general-purpose
-utility like patch(1) instead. However, patch(1) will not only look for
+utility like `patch`(1) instead. However, `patch`(1) will not only look for
unindented diffs (like linkgit:git-am[1]) but will try to apply indented
diffs as well.
diff --git a/Documentation/format-patch-end-of-commit-message.adoc b/Documentation/format-patch-end-of-commit-message.adoc
index ec1ef79f5e..a1a624d2ac 100644
--- a/Documentation/format-patch-end-of-commit-message.adoc
+++ b/Documentation/format-patch-end-of-commit-message.adoc
@@ -1,8 +1,8 @@
Any line that is of the form:
* three-dashes and end-of-line, or
-* a line that begins with "diff -", or
-* a line that begins with "Index: "
+* a line that begins with `diff -`, or
+* a line that begins with `Index: `
is taken as the beginning of a patch, and the commit log message
is terminated before the first occurrence of such a line.
diff --git a/Documentation/git-am.adoc b/Documentation/git-am.adoc
index ac65852918..28adf4cf65 100644
--- a/Documentation/git-am.adoc
+++ b/Documentation/git-am.adoc
@@ -8,17 +8,17 @@ git-am - Apply a series of patches from a mailbox
SYNOPSIS
--------
-[verse]
-'git am' [--signoff] [--keep] [--[no-]keep-cr] [--[no-]utf8] [--[no-]verify]
+[synopsis]
+git am [--signoff] [--keep] [--[no-]keep-cr] [--[no-]utf8] [--[no-]verify]
[--[no-]3way] [--interactive] [--committer-date-is-author-date]
[--ignore-date] [--ignore-space-change | --ignore-whitespace]
[--whitespace=<action>] [-C<n>] [-p<n>] [--directory=<dir>]
[--exclude=<path>] [--include=<path>] [--reject] [-q | --quiet]
- [--[no-]scissors] [-S[<keyid>]] [--patch-format=<format>]
+ [--[no-]scissors] [-S[<key-id>]] [--patch-format=<format>]
[--quoted-cr=<action>]
[--empty=(stop|drop|keep)]
[(<mbox> | <Maildir>)...]
-'git am' (--continue | --skip | --abort | --quit | --retry | --show-current-patch[=(diff|raw)] | --allow-empty)
+git am (--continue | --skip | --abort | --quit | --retry | --show-current-patch[=(diff|raw)] | --allow-empty)
DESCRIPTION
-----------
@@ -30,45 +30,45 @@ history without merges.
OPTIONS
-------
-(<mbox>|<Maildir>)...::
+`(<mbox>|<Maildir>)...`::
The list of mailbox files to read patches from. If you do not
supply this argument, the command reads from the standard input.
If you supply directories, they will be treated as Maildirs.
--s::
---signoff::
+`-s`::
+`--signoff`::
Add a `Signed-off-by` trailer to the commit message (see
linkgit:git-interpret-trailers[1]), using the committer identity
of yourself. See the signoff option in linkgit:git-commit[1]
for more information.
--k::
---keep::
+`-k`::
+`--keep`::
Pass `-k` flag to linkgit:git-mailinfo[1].
---keep-non-patch::
+`--keep-non-patch`::
Pass `-b` flag to linkgit:git-mailinfo[1].
---keep-cr::
---no-keep-cr::
+`--keep-cr`::
+`--no-keep-cr`::
With `--keep-cr`, call linkgit:git-mailsplit[1]
with the same option, to prevent it from stripping CR at the end of
lines. `am.keepcr` configuration variable can be used to specify the
default behaviour. `--no-keep-cr` is useful to override `am.keepcr`.
--c::
---scissors::
+`-c`::
+`--scissors`::
Remove everything in body before a scissors line (see
linkgit:git-mailinfo[1]). Can be activated by default using
the `mailinfo.scissors` configuration variable.
---no-scissors::
+`--no-scissors`::
Ignore scissors lines (see linkgit:git-mailinfo[1]).
---quoted-cr=<action>::
+`--quoted-cr=<action>`::
This flag will be passed down to linkgit:git-mailinfo[1].
---empty=(drop|keep|stop)::
+`--empty=(drop|keep|stop)`::
How to handle an e-mail message lacking a patch:
+
--
@@ -82,23 +82,23 @@ OPTIONS
session. This is the default behavior.
--
--m::
---message-id::
+`-m`::
+`--message-id`::
Pass the `-m` flag to linkgit:git-mailinfo[1],
so that the `Message-ID` header is added to the commit message.
The `am.messageid` configuration variable can be used to specify
the default behaviour.
---no-message-id::
+`--no-message-id`::
Do not add the Message-ID header to the commit message.
`--no-message-id` is useful to override `am.messageid`.
--q::
---quiet::
+`-q`::
+`--quiet`::
Be quiet. Only print error messages.
--u::
---utf8::
+`-u`::
+`--utf8`::
Pass `-u` flag to linkgit:git-mailinfo[1].
The proposed commit log message taken from the e-mail
is re-coded into UTF-8 encoding (configuration variable
@@ -108,57 +108,57 @@ OPTIONS
This was optional in prior versions of git, but now it is the
default. You can use `--no-utf8` to override this.
---no-utf8::
+`--no-utf8`::
Pass `-n` flag to linkgit:git-mailinfo[1].
--3::
---3way::
---no-3way::
+`-3`::
+`--3way`::
+`--no-3way`::
When the patch does not apply cleanly, fall back on
3-way merge if the patch records the identity of blobs
it is supposed to apply to and we have those blobs
available locally. `--no-3way` can be used to override
- am.threeWay configuration variable. For more information,
- see am.threeWay in linkgit:git-config[1].
+ `am.threeWay` configuration variable. For more information,
+ see `am.threeWay` in linkgit:git-config[1].
include::rerere-options.adoc[]
---ignore-space-change::
---ignore-whitespace::
---whitespace=<action>::
--C<n>::
--p<n>::
---directory=<dir>::
---exclude=<path>::
---include=<path>::
---reject::
+`--ignore-space-change`::
+`--ignore-whitespace`::
+`--whitespace=<action>`::
+`-C<n>`::
+`-p<n>`::
+`--directory=<dir>`::
+`--exclude=<path>`::
+`--include=<path>`::
+`--reject`::
These flags are passed to the linkgit:git-apply[1] program that
applies the patch.
+
-Valid <action> for the `--whitespace` option are:
+Valid _<action>_ for the `--whitespace` option are:
`nowarn`, `warn`, `fix`, `error`, and `error-all`.
---patch-format::
+`--patch-format`::
By default the command will try to detect the patch format
automatically. This option allows the user to bypass the automatic
detection and specify the patch format that the patch(es) should be
interpreted as. Valid formats are mbox, mboxrd,
stgit, stgit-series, and hg.
--i::
---interactive::
+`-i`::
+`--interactive`::
Run interactively.
---verify::
--n::
---no-verify::
+`--verify`::
+`-n`::
+`--no-verify`::
Run the `pre-applypatch` and `applypatch-msg` hooks. This is the
default. Skip these hooks with `-n` or `--no-verify`. See also
linkgit:githooks[5].
+
Note that `post-applypatch` cannot be skipped.
---committer-date-is-author-date::
+`--committer-date-is-author-date`::
By default the command records the date from the e-mail
message as the commit author date, and uses the time of
commit creation as the committer date. This allows the
@@ -172,29 +172,29 @@ committer date when applying commits on top of a base which commit is
older (in terms of the commit date) than the oldest patch you are
applying.
---ignore-date::
+`--ignore-date`::
By default the command records the date from the e-mail
message as the commit author date, and uses the time of
commit creation as the committer date. This allows the
user to lie about the author date by using the same
value as the committer date.
---skip::
+`--skip`::
Skip the current patch. This is only meaningful when
restarting an aborted patch.
--S[<keyid>]::
---gpg-sign[=<keyid>]::
---no-gpg-sign::
- GPG-sign commits. The `keyid` argument is optional and
+`-S[<key-id>]`::
+`--gpg-sign[=<key-id>]`::
+`--no-gpg-sign`::
+ GPG-sign commits. The _<key-id>_ is optional and
defaults to the committer identity; if specified, it must be
stuck to the option without a space. `--no-gpg-sign` is useful to
countermand both `commit.gpgSign` configuration variable, and
earlier `--gpg-sign`.
---continue::
--r::
---resolved::
+`--continue`::
+`-r`::
+`--resolved`::
After a patch failure (e.g. attempting to apply
conflicting patch), the user has applied it by hand and
the index file stores the result of the application.
@@ -202,36 +202,36 @@ applying.
extracted from the e-mail message and the current index
file, and continue.
---resolvemsg=<msg>::
- When a patch failure occurs, <msg> will be printed
+`--resolvemsg=<msg>`::
+ When a patch failure occurs, _<msg>_ will be printed
to the screen before exiting. This overrides the
standard message informing you to use `--continue`
or `--skip` to handle the failure. This is solely
for internal use between linkgit:git-rebase[1] and
linkgit:git-am[1].
---abort::
+`--abort`::
Restore the original branch and abort the patching operation.
Revert the contents of files involved in the am operation to their
pre-am state.
---quit::
- Abort the patching operation but keep HEAD and the index
+`--quit`::
+ Abort the patching operation but keep `HEAD` and the index
untouched.
---retry::
+`--retry`::
Try to apply the last conflicting patch again. This is generally
only useful for passing extra options to the retry attempt
(e.g., `--3way`), since otherwise you'll just see the same
failure again.
---show-current-patch[=(diff|raw)]::
+`--show-current-patch[=(diff|raw)]`::
Show the message at which linkgit:git-am[1] has stopped due to
conflicts. If `raw` is specified, show the raw contents of
the e-mail message; if `diff`, show the diff portion only.
Defaults to `raw`.
---allow-empty::
+`--allow-empty`::
After a patch failure on an input e-mail message lacking a patch,
create an empty commit with the contents of the e-mail message
as its log message.
@@ -278,11 +278,11 @@ operation is finished, so if you decide to start over from scratch,
run `git am --abort` before running the command with mailbox
names.
-Before any patches are applied, ORIG_HEAD is set to the tip of the
+Before any patches are applied, `ORIG_HEAD` is set to the tip of the
current branch. This is useful if you have problems with multiple
commits, like running linkgit:git-am[1] on the wrong branch or an error
in the commits that is more easily fixed by changing the mailbox (e.g.
-errors in the "From:" lines).
+errors in the `From:` lines).
[[caveats]]
CAVEATS
--
gitgitgadget
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 4/5] doc: convert git-apply synopsis and options to new style
2026-05-17 20:26 [PATCH 0/5] doc: convert another batch of files to synopsis style Jean-Noël Avila via GitGitGadget
` (2 preceding siblings ...)
2026-05-17 20:26 ` [PATCH 3/5] doc: convert git-am " Jean-Noël Avila via GitGitGadget
@ 2026-05-17 20:26 ` Jean-Noël Avila via GitGitGadget
2026-05-17 20:26 ` [PATCH 5/5] doc: convert git-imap-send " Jean-Noël Avila via GitGitGadget
4 siblings, 0 replies; 8+ messages in thread
From: Jean-Noël Avila via GitGitGadget @ 2026-05-17 20:26 UTC (permalink / raw)
To: git; +Cc: Jean-Noël Avila, Jean-Noël Avila
From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <jn.avila@free.fr>
Convert git-apply from [verse]/single-quote style to the modern
synopsis-block style:
- Replace [verse] with [synopsis] in SYNOPSIS block
- Backtick-quote all OPTIONS terms and config keys in config/apply.adoc
- Convert single-quoted inline commands ('git apply', 'diff', etc.)
- Wrap standalone placeholders in underscores (<n>, <root>, <action>)
- Backtick-quote `*.rej` and GNU `patch` tool references
Signed-off-by: Jean-Noël Avila <jn.avila@free.fr>
---
Documentation/config/apply.adoc | 17 +++--
Documentation/git-apply.adoc | 125 ++++++++++++++++----------------
2 files changed, 74 insertions(+), 68 deletions(-)
diff --git a/Documentation/config/apply.adoc b/Documentation/config/apply.adoc
index f9908e210a..36fcea6291 100644
--- a/Documentation/config/apply.adoc
+++ b/Documentation/config/apply.adoc
@@ -1,11 +1,16 @@
-apply.ignoreWhitespace::
- When set to 'change', tells 'git apply' to ignore changes in
+`apply.ignoreWhitespace`::
+ When set to `change`, tells `git apply` to ignore changes in
whitespace, in the same way as the `--ignore-space-change`
option.
- When set to one of: no, none, never, false, it tells 'git apply' to
+ When set to one of: `no`, `none`, `never`, `false`, it tells `git apply` to
respect all whitespace differences.
+ifndef::git-apply[]
See linkgit:git-apply[1].
+endif::git-apply[]
-apply.whitespace::
- Tells 'git apply' how to handle whitespace, in the same way
- as the `--whitespace` option. See linkgit:git-apply[1].
+`apply.whitespace`::
+ Tells `git apply` how to handle whitespace, in the same way
+ as the `--whitespace` option.
+ifndef::git-apply[]
+ See linkgit:git-apply[1].
+endif::git-apply[]
diff --git a/Documentation/git-apply.adoc b/Documentation/git-apply.adoc
index 6c71ee69da..3f22dac1ce 100644
--- a/Documentation/git-apply.adoc
+++ b/Documentation/git-apply.adoc
@@ -8,8 +8,8 @@ git-apply - Apply a patch to files and/or to the index
SYNOPSIS
--------
-[verse]
-'git apply' [--stat] [--numstat] [--summary] [--check]
+[synopsis]
+git apply [--stat] [--numstat] [--summary] [--check]
[--index | --intent-to-add] [--3way] [--ours | --theirs | --union]
[--apply] [--no-add] [--build-fake-ancestor=<file>] [-R | --reverse]
[--allow-binary-replacement | --binary] [--reject] [-z]
@@ -35,33 +35,33 @@ linkgit:git-format-patch[1] and/or received by email.
OPTIONS
-------
-<patch>...::
- The files to read the patch from. '-' can be used to read
+`<patch>...`::
+ The files to read the patch from. `-` can be used to read
from the standard input.
---stat::
+`--stat`::
Instead of applying the patch, output diffstat for the
input. Turns off "apply".
---numstat::
+`--numstat`::
Similar to `--stat`, but shows the number of added and
deleted lines in decimal notation and the pathname without
abbreviation, to make it more machine friendly. For
binary files, outputs two `-` instead of saying
`0 0`. Turns off "apply".
---summary::
+`--summary`::
Instead of applying the patch, output a condensed
summary of information obtained from git diff extended
headers, such as creations, renames, and mode changes.
Turns off "apply".
---check::
+`--check`::
Instead of applying the patch, see if the patch is
applicable to the current working tree and/or the index
file and detects errors. Turns off "apply".
---index::
+`--index`::
Apply the patch to both the index and the working tree (or
merely check that it would apply cleanly to both if `--check` is
in effect). Note that `--index` expects index entries and
@@ -70,13 +70,13 @@ OPTIONS
raise an error if they are not, even if the patch would apply
cleanly to both the index and the working tree in isolation.
---cached::
+`--cached`::
Apply the patch to just the index, without touching the working
tree. If `--check` is in effect, merely check that it would
apply cleanly to the index entry.
--N::
---intent-to-add::
+`-N`::
+`--intent-to-add`::
When applying the patch only to the working tree, mark new
files to be added to the index later (see `--intent-to-add`
option in linkgit:git-add[1]). This option is ignored if
@@ -84,8 +84,8 @@ OPTIONS
repository. Note that `--index` could be implied by other options
such as `--3way`.
--3::
---3way::
+`-3`::
+`--3way`::
Attempt 3-way merge if the patch records the identity of blobs it is supposed
to apply to and we have those blobs available locally, possibly leaving the
conflict markers in the files in the working tree for the user to
@@ -94,14 +94,14 @@ OPTIONS
When used with the `--cached` option, any conflicts are left at higher stages
in the cache.
---ours::
---theirs::
---union::
+`--ours`::
+`--theirs`::
+`--union`::
Instead of leaving conflicts in the file, resolve conflicts favouring
- our (or their or both) side of the lines. Requires --3way.
+ our (or their or both) side of the lines. Requires `--3way`.
---build-fake-ancestor=<file>::
- Newer 'git diff' output has embedded 'index information'
+`--build-fake-ancestor=<file>`::
+ Newer `git diff` output has embedded 'index information'
for each blob to help identify the original version that
the patch applies to. When this flag is given, and if
the original versions of the blobs are available locally,
@@ -110,18 +110,18 @@ OPTIONS
When a pure mode change is encountered (which has no index information),
the information is read from the current index instead.
--R::
---reverse::
+`-R`::
+`--reverse`::
Apply the patch in reverse.
---reject::
- For atomicity, 'git apply' by default fails the whole patch and
+`--reject`::
+ For atomicity, `git apply` by default fails the whole patch and
does not touch the working tree when some of the hunks
do not apply. This option makes it apply
the parts of the patch that are applicable, and leave the
- rejected hunks in corresponding *.rej files.
+ rejected hunks in corresponding `*.rej` files.
--z::
+`-z`::
When `--numstat` has been given, do not munge pathnames,
but use a NUL-terminated machine-readable format.
+
@@ -129,20 +129,20 @@ Without this option, pathnames with "unusual" characters are quoted as
explained for the configuration variable `core.quotePath` (see
linkgit:git-config[1]).
--p<n>::
- Remove <n> leading path components (separated by slashes) from
+`-p<n>`::
+ Remove _<n>_ leading path components (separated by slashes) from
traditional diff paths. E.g., with `-p2`, a patch against
`a/dir/file` will be applied directly to `file`. The default is
1.
--C<n>::
- Ensure at least <n> lines of surrounding context match before
+`-C<n>`::
+ Ensure at least _<n>_ lines of surrounding context match before
and after each change. When fewer lines of surrounding
context exist they all must match. By default no context is
ever ignored.
---unidiff-zero::
- By default, 'git apply' expects that the patch being
+`--unidiff-zero`::
+ By default, `git apply` expects that the patch being
applied is a unified diff with at least one line of context.
This provides good safety measures, but breaks down when
applying a diff generated with `--unified=0`. To bypass these
@@ -151,34 +151,34 @@ linkgit:git-config[1]).
Note, for the reasons stated above, the usage of context-free patches is
discouraged.
---apply::
+`--apply`::
If you use any of the options marked "Turns off
- 'apply'" above, 'git apply' reads and outputs the
+ 'apply'" above, `git apply` reads and outputs the
requested information without actually applying the
patch. Give this flag after those flags to also apply
the patch.
---no-add::
+`--no-add`::
When applying a patch, ignore additions made by the
patch. This can be used to extract the common part between
- two files by first running 'diff' on them and applying
+ two files by first running `diff` on them and applying
the result with this option, which would apply the
deletion part but not the addition part.
---allow-binary-replacement::
---binary::
+`--allow-binary-replacement`::
+`--binary`::
Historically we did not allow binary patch application
without an explicit permission from the user, and this
flag was the way to do so. Currently, we always allow binary
patch application, so this is a no-op.
---exclude=<path-pattern>::
- Don't apply changes to files matching the given path pattern. This can
+`--exclude=<path-pattern>`::
+ Don't apply changes to files matching _<path-pattern>_. This can
be useful when importing patchsets, where you want to exclude certain
files or directories.
---include=<path-pattern>::
- Apply changes to files matching the given path pattern. This can
+`--include=<path-pattern>`::
+ Apply changes to files matching the _<path-pattern>_. This can
be useful when importing patchsets, where you want to include certain
files or directories.
+
@@ -188,15 +188,15 @@ patch to each path is used. A patch to a path that does not match any
include/exclude pattern is used by default if there is no include pattern
on the command line, and ignored if there is any include pattern.
---ignore-space-change::
---ignore-whitespace::
+`--ignore-space-change`::
+`--ignore-whitespace`::
When applying a patch, ignore changes in whitespace in context
lines if necessary.
Context lines will preserve their whitespace, and they will not
undergo whitespace fixing regardless of the value of the
`--whitespace` option. New lines will still be fixed, though.
---whitespace=<action>::
+`--whitespace=<action>`::
When applying a patch, detect a new or modified line that has
whitespace errors. What are considered whitespace errors is
controlled by `core.whitespace` configuration. By default,
@@ -209,7 +209,7 @@ By default, the command outputs warning messages but applies the patch.
When `git-apply` is used for statistics and not applying a
patch, it defaults to `nowarn`.
+
-You can use different `<action>` values to control this
+You can use different _<action>_ values to control this
behavior:
+
* `nowarn` turns off the trailing whitespace warning.
@@ -223,48 +223,48 @@ behavior:
to apply the patch.
* `error-all` is similar to `error` but shows all errors.
---inaccurate-eof::
- Under certain circumstances, some versions of 'diff' do not correctly
+`--inaccurate-eof`::
+ Under certain circumstances, some versions of `diff` do not correctly
detect a missing new-line at the end of the file. As a result, patches
- created by such 'diff' programs do not record incomplete lines
+ created by such `diff` programs do not record incomplete lines
correctly. This option adds support for applying such patches by
working around this bug.
--v::
---verbose::
+`-v`::
+`--verbose`::
Report progress to stderr. By default, only a message about the
current patch being applied will be printed. This option will cause
additional information to be reported.
--q::
---quiet::
+`-q`::
+`--quiet`::
Suppress stderr output. Messages about patch status and progress
will not be printed.
---recount::
+`--recount`::
Do not trust the line counts in the hunk headers, but infer them
by inspecting the patch (e.g. after editing the patch without
adjusting the hunk headers appropriately).
---directory=<root>::
- Prepend <root> to all filenames. If a "-p" argument was also passed,
+`--directory=<root>`::
+ Prepend _<root>_ to all filenames. If a `-p` argument was also passed,
it is applied before prepending the new root.
+
For example, a patch that talks about updating `a/git-gui.sh` to `b/git-gui.sh`
can be applied to the file in the working tree `modules/git-gui/git-gui.sh` by
running `git apply --directory=modules/git-gui`.
---unsafe-paths::
+`--unsafe-paths`::
By default, a patch that affects outside the working area
(either a Git controlled working tree, or the current working
- directory when "git apply" is used as a replacement of GNU
- patch) is rejected as a mistake (or a mischief).
+ directory when `git apply` is used as a replacement of GNU
+ `patch`) is rejected as a mistake (or a mischief).
+
-When `git apply` is used as a "better GNU patch", the user can pass
+When `git apply` is used as a "better GNU `patch`", the user can pass
the `--unsafe-paths` option to override this safety check. This option
has no effect when `--index` or `--cached` is in use.
---allow-empty::
+`--allow-empty`::
Don't return an error for patches containing no diff. This includes
empty patches and patches with commit text only.
@@ -273,11 +273,12 @@ CONFIGURATION
include::includes/cmd-config-section-all.adoc[]
+:git-apply: 1
include::config/apply.adoc[]
SUBMODULES
----------
-If the patch contains any changes to submodules then 'git apply'
+If the patch contains any changes to submodules then `git apply`
treats these changes as follows.
If `--index` is specified (explicitly or implicitly), then the submodule
--
gitgitgadget
^ permalink raw reply related [flat|nested] 8+ messages in thread* [PATCH 5/5] doc: convert git-imap-send synopsis and options to new style
2026-05-17 20:26 [PATCH 0/5] doc: convert another batch of files to synopsis style Jean-Noël Avila via GitGitGadget
` (3 preceding siblings ...)
2026-05-17 20:26 ` [PATCH 4/5] doc: convert git-apply " Jean-Noël Avila via GitGitGadget
@ 2026-05-17 20:26 ` Jean-Noël Avila via GitGitGadget
4 siblings, 0 replies; 8+ messages in thread
From: Jean-Noël Avila via GitGitGadget @ 2026-05-17 20:26 UTC (permalink / raw)
To: git; +Cc: Jean-Noël Avila, Jean-Noël Avila
From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <jn.avila@free.fr>
Convert git-imap-send from [verse]/single-quote style to the modern
synopsis-block style:
- Replace [verse] with [synopsis] in SYNOPSIS block
- Backtick-quote all OPTIONS terms
- Backtick-quote all config keys in config/imap.adoc
- Backtick-quote bare config key references in prose
Signed-off-by: Jean-Noël Avila <jn.avila@free.fr>
---
Documentation/config/imap.adoc | 30 +++++++++++++++---------------
Documentation/git-imap-send.adoc | 24 ++++++++++++------------
2 files changed, 27 insertions(+), 27 deletions(-)
diff --git a/Documentation/config/imap.adoc b/Documentation/config/imap.adoc
index 4682a6bd03..cb8f5e2700 100644
--- a/Documentation/config/imap.adoc
+++ b/Documentation/config/imap.adoc
@@ -1,44 +1,44 @@
-imap.folder::
+`imap.folder`::
The folder to drop the mails into, which is typically the Drafts
folder. For example: `INBOX.Drafts`, `INBOX/Drafts` or
`[Gmail]/Drafts`. The IMAP folder to interact with MUST be specified;
the value of this configuration variable is used as the fallback
default value when the `--folder` option is not given.
-imap.tunnel::
+`imap.tunnel`::
Command used to set up a tunnel to the IMAP server through which
commands will be piped instead of using a direct network connection
- to the server. Required when imap.host is not set.
+ to the server. Required when `imap.host` is not set.
-imap.host::
+`imap.host`::
A URL identifying the server. Use an `imap://` prefix for non-secure
connections and an `imaps://` prefix for secure connections.
- Ignored when imap.tunnel is set, but required otherwise.
+ Ignored when `imap.tunnel` is set, but required otherwise.
-imap.user::
+`imap.user`::
The username to use when logging in to the server.
-imap.pass::
+`imap.pass`::
The password to use when logging in to the server.
-imap.port::
+`imap.port`::
An integer port number to connect to on the server.
- Defaults to 143 for imap:// hosts and 993 for imaps:// hosts.
- Ignored when imap.tunnel is set.
+ Defaults to 143 for `imap://` hosts and 993 for `imaps://` hosts.
+ Ignored when `imap.tunnel` is set.
-imap.sslverify::
+`imap.sslverify`::
A boolean to enable/disable verification of the server certificate
used by the SSL/TLS connection. Default is `true`. Ignored when
- imap.tunnel is set.
+ `imap.tunnel` is set.
-imap.preformattedHTML::
+`imap.preformattedHTML`::
A boolean to enable/disable the use of html encoding when sending
- a patch. An html encoded patch will be bracketed with <pre>
+ a patch. An html encoded patch will be bracketed with `<pre>`
and have a content type of text/html. Ironically, enabling this
option causes Thunderbird to send the patch as a plain/text,
format=fixed email. Default is `false`.
-imap.authMethod::
+`imap.authMethod`::
Specify the authentication method for authenticating with the IMAP server.
If Git was built with the NO_CURL option, or if your curl version is older
than 7.34.0, or if you're running git-imap-send with the `--no-curl`
diff --git a/Documentation/git-imap-send.adoc b/Documentation/git-imap-send.adoc
index 278e5ccd36..538b91afc0 100644
--- a/Documentation/git-imap-send.adoc
+++ b/Documentation/git-imap-send.adoc
@@ -8,9 +8,9 @@ git-imap-send - Send a collection of patches from stdin to an IMAP folder
SYNOPSIS
--------
-[verse]
-'git imap-send' [-v] [-q] [--[no-]curl] [(--folder|-f) <folder>]
-'git imap-send' --list
+[synopsis]
+git imap-send [-v] [-q] [--[no-]curl] [(--folder|-f) <folder>]
+git imap-send --list
DESCRIPTION
@@ -32,30 +32,30 @@ $ git format-patch --signoff --stdout --attach origin | git imap-send
OPTIONS
-------
--v::
---verbose::
+`-v`::
+`--verbose`::
Be verbose.
--q::
---quiet::
+`-q`::
+`--quiet`::
Be quiet.
--f <folder>::
---folder=<folder>::
+`-f <folder>`::
+`--folder=<folder>`::
Specify the folder in which the emails have to saved.
For example: `--folder=[Gmail]/Drafts` or `-f INBOX/Drafts`.
---curl::
+`--curl`::
Use libcurl to communicate with the IMAP server, unless tunneling
into it. Ignored if Git was built without the USE_CURL_FOR_IMAP_SEND
option set.
---no-curl::
+`--no-curl`::
Talk to the IMAP server using git's own IMAP routines instead of
using libcurl. Ignored if Git was built with the NO_OPENSSL option
set.
---list::
+`--list`::
Run the IMAP LIST command to output a list of all the folders present.
CONFIGURATION
--
gitgitgadget
^ permalink raw reply related [flat|nested] 8+ messages in thread