doc: convert git-mergetool manpage to new synopsis style

- Switch the synopsis to a synopsis block which will automatically
  format placeholders in italics and keywords in monospace
- Use _<placeholder>_ instead of <placeholder> in the description
- Use `backticks` for keywords and more complex option
descriptions. The new rendering engine will apply synopsis rules to
these spans.

Signed-off-by: Jean-Noël Avila <jn.avila@free.fr>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Jean-Noël Avila
2025-05-25 20:27:07 +00:00
committed by Junio C Hamano
parent 90a837a720
commit 1654396782

View File

@@ -7,95 +7,95 @@ git-mergetool - Run merge conflict resolution tools to resolve merge conflicts
SYNOPSIS SYNOPSIS
-------- --------
[verse] [synopsis]
'git mergetool' [--tool=<tool>] [-y | --[no-]prompt] [<file>...] git mergetool [--tool=<tool>] [-y | --[no-]prompt] [<file>...]
DESCRIPTION DESCRIPTION
----------- -----------
Use `git mergetool` to run one of several merge utilities to resolve Use `git mergetool` to run one of several merge utilities to resolve
merge conflicts. It is typically run after 'git merge'. merge conflicts. It is typically run after `git merge`.
If one or more <file> parameters are given, the merge tool program will If one or more <file> parameters are given, the merge tool program will
be run to resolve differences in each file (skipping those without be run to resolve differences in each file (skipping those without
conflicts). Specifying a directory will include all unresolved files in conflicts). Specifying a directory will include all unresolved files in
that path. If no <file> names are specified, 'git mergetool' will run that path. If no _<file>_ names are specified, `git mergetool` will run
the merge tool program on every file with merge conflicts. the merge tool program on every file with merge conflicts.
OPTIONS OPTIONS
------- -------
-t <tool>:: `-t <tool>`::
--tool=<tool>:: `--tool=<tool>`::
Use the merge resolution program specified by <tool>. Use the merge resolution program specified by _<tool>_.
Valid values include emerge, gvimdiff, kdiff3, Valid values include `emerge`, `gvimdiff`, `kdiff3`,
meld, vimdiff, and tortoisemerge. Run `git mergetool --tool-help` `meld`, `vimdiff`, and `tortoisemerge`. Run `git mergetool --tool-help`
for the list of valid <tool> settings. for the list of valid _<tool>_ settings.
+ +
If a merge resolution program is not specified, 'git mergetool' If a merge resolution program is not specified, `git mergetool`
will use the configuration variable `merge.tool`. If the will use the configuration variable `merge.tool`. If the
configuration variable `merge.tool` is not set, 'git mergetool' configuration variable `merge.tool` is not set, `git mergetool`
will pick a suitable default. will pick a suitable default.
+ +
You can explicitly provide a full path to the tool by setting the You can explicitly provide a full path to the tool by setting the
configuration variable `mergetool.<tool>.path`. For example, you configuration variable `mergetool.<tool>.path`. For example, you
can configure the absolute path to kdiff3 by setting can configure the absolute path to kdiff3 by setting
`mergetool.kdiff3.path`. Otherwise, 'git mergetool' assumes the `mergetool.kdiff3.path`. Otherwise, `git mergetool` assumes the
tool is available in PATH. tool is available in `$PATH`.
+ +
Instead of running one of the known merge tool programs, Instead of running one of the known merge tool programs,
'git mergetool' can be customized to run an alternative program `git mergetool` can be customized to run an alternative program
by specifying the command line to invoke in a configuration by specifying the command line to invoke in a configuration
variable `mergetool.<tool>.cmd`. variable `mergetool.<tool>.cmd`.
+ +
When 'git mergetool' is invoked with this tool (either through the When `git mergetool` is invoked with this tool (either through the
`-t` or `--tool` option or the `merge.tool` configuration `-t` or `--tool` option or the `merge.tool` configuration
variable), the configured command line will be invoked with `$BASE` variable), the configured command line will be invoked with `BASE`
set to the name of a temporary file containing the common base for set to the name of a temporary file containing the common base for
the merge, if available; `$LOCAL` set to the name of a temporary the merge, if available; `LOCAL` set to the name of a temporary
file containing the contents of the file on the current branch; file containing the contents of the file on the current branch;
`$REMOTE` set to the name of a temporary file containing the `REMOTE` set to the name of a temporary file containing the
contents of the file to be merged, and `$MERGED` set to the name contents of the file to be merged, and `MERGED` set to the name
of the file to which the merge tool should write the result of the of the file to which the merge tool should write the result of the
merge resolution. merge resolution.
+ +
If the custom merge tool correctly indicates the success of a If the custom merge tool correctly indicates the success of a
merge resolution with its exit code, then the configuration merge resolution with its exit code, then the configuration
variable `mergetool.<tool>.trustExitCode` can be set to `true`. variable `mergetool.<tool>.trustExitCode` can be set to `true`.
Otherwise, 'git mergetool' will prompt the user to indicate the Otherwise, `git mergetool` will prompt the user to indicate the
success of the resolution after the custom tool has exited. success of the resolution after the custom tool has exited.
--tool-help:: `--tool-help`::
Print a list of merge tools that may be used with `--tool`. Print a list of merge tools that may be used with `--tool`.
-y:: `-y`::
--no-prompt:: `--no-prompt`::
Don't prompt before each invocation of the merge resolution Don't prompt before each invocation of the merge resolution
program. program.
This is the default if the merge resolution program is This is the default if the merge resolution program is
explicitly specified with the `--tool` option or with the explicitly specified with the `--tool` option or with the
`merge.tool` configuration variable. `merge.tool` configuration variable.
--prompt:: `--prompt`::
Prompt before each invocation of the merge resolution program Prompt before each invocation of the merge resolution program
to give the user a chance to skip the path. to give the user a chance to skip the path.
-g:: `-g`::
--gui:: `--gui`::
When 'git-mergetool' is invoked with the `-g` or `--gui` option, When `git-mergetool` is invoked with the `-g` or `--gui` option,
the default merge tool will be read from the configured the default merge tool will be read from the configured
`merge.guitool` variable instead of `merge.tool`. If `merge.guitool` variable instead of `merge.tool`. If
`merge.guitool` is not set, we will fallback to the tool `merge.guitool` is not set, we will fallback to the tool
configured under `merge.tool`. This may be autoselected using configured under `merge.tool`. This may be autoselected using
the configuration variable `mergetool.guiDefault`. the configuration variable `mergetool.guiDefault`.
--no-gui:: `--no-gui`::
This overrides a previous `-g` or `--gui` setting or This overrides a previous `-g` or `--gui` setting or
`mergetool.guiDefault` configuration and reads the default merge `mergetool.guiDefault` configuration and reads the default merge
tool from the configured `merge.tool` variable. tool from the configured `merge.tool` variable.
-O<orderfile>:: `-O<orderfile>`::
Process files in the order specified in the Process files in the order specified in the
<orderfile>, which has one shell glob pattern per line. _<orderfile>_, which has one shell glob pattern per line.
This overrides the `diff.orderFile` configuration variable This overrides the `diff.orderFile` configuration variable
(see linkgit:git-config[1]). To cancel `diff.orderFile`, (see linkgit:git-config[1]). To cancel `diff.orderFile`,
use `-O/dev/null`. use `-O/dev/null`.