Skip to contentSkip to conversation

doc: fix grammar rules in commands'syntax

PATCH Superseded Jean-Noël Avila via GitGitGadget 9 participants 49 messages Oct 26, 2021 – Nov 9, 2021 Documentation

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 doc: fix grammar rules in commands'syntax

From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <[email protected]>

According to the coding guidelines, the placeholders must:
* be in small letters
* enclosed in angle brackets

Some other rules are also applied.

---
doc: fix grammar rules in commands'syntax

There are command expressions which do not follow the grammar syntax rules.

According to the coding guidelines, the placeholders must:

* be in small letters
* enclosed in angle brackets

Some other rules are also applied.

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1066%2Fjnavila%2Ffix_manpages_placeholders-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1066/jnavila/fix_manpages_placeholders-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/1066

 Documentation/git-archimport.txt      |  4 +--
 Documentation/git-checkout.txt        |  8 +++---
 Documentation/git-cherry-pick.txt     |  6 ++---
 Documentation/git-config.txt          | 36 +++++++++++++--------------
 Documentation/git-credential.txt      |  2 +-
 Documentation/git-cvsexportcommit.txt |  4 +--
 Documentation/git-cvsimport.txt       | 10 ++++----
 Documentation/git-fsck.txt            |  2 +-
 Documentation/git-gui.txt             |  2 +-
 Documentation/git-help.txt            |  6 ++---
 Documentation/git-http-fetch.txt      |  2 +-
 Documentation/git-http-push.txt       | 13 +++++-----
 Documentation/git-init-db.txt         |  2 +-
 Documentation/git-init.txt            | 25 ++++++++++---------
 Documentation/git-log.txt             |  4 +--
 Documentation/git-ls-files.txt        |  4 +--
 Documentation/git-merge-index.txt     |  2 +-
 Documentation/git-p4.txt              |  6 ++---
 Documentation/git-pack-objects.txt    |  4 +--
 Documentation/git-pack-redundant.txt  |  2 +-
 Documentation/git-reflog.txt          |  4 +--
 Documentation/git-shortlog.txt        |  4 +--
 Documentation/git-sparse-checkout.txt |  2 +-
 Documentation/git-stage.txt           |  2 +-
 Documentation/git-web--browse.txt     |  2 +-
 25 files changed, 79 insertions(+), 79 deletions(-)
Documentation/git-archimport.txt +2 -2
index a595a0ffeee..25d8bd2b08c 100644
@@ -9,8 +9,8 @@ git-archimport - Import a GNU Arch repository into Git
 SYNOPSIS
 --------
 [verse]
-'git archimport' [-h] [-v] [-o] [-a] [-f] [-T] [-D depth] [-t tempdir]
-               <archive/branch>[:<git-branch>] ...
+'git archimport' [-h] [-v] [-o] [-a] [-f] [-T] [-D <depth>] [-t <tempdir>]
+	       <archive>/<branch>[:<git-branch>]...
 
 DESCRIPTION
 -----------
Documentation/git-checkout.txt +4 -4
index d473c9bf387..5964dcc25ed 100644
@@ -11,7 +11,7 @@ SYNOPSIS
 'git checkout' [-q] [-f] [-m] [<branch>]
 'git checkout' [-q] [-f] [-m] --detach [<branch>]
 'git checkout' [-q] [-f] [-m] [--detach] <commit>
-'git checkout' [-q] [-f] [-m] [[-b|-B|--orphan] <new_branch>] [<start_point>]
+'git checkout' [-q] [-f] [-m] [[-b|-B|--orphan] <new-branch>] [<start-point>]
 'git checkout' [-f|--ours|--theirs|-m|--conflict=<style>] [<tree-ish>] [--] <pathspec>...
 'git checkout' [-f|--ours|--theirs|-m|--conflict=<style>] [<tree-ish>] --pathspec-from-file=<file> [--pathspec-file-nul]
 'git checkout' (-p|--patch) [<tree-ish>] [--] [<pathspec>...]
@@ -43,7 +43,7 @@ You could omit `<branch>`, in which case the command degenerates to
 rather expensive side-effects to show only the tracking information,
 if exists, for the current branch.
 
-'git checkout' -b|-B <new_branch> [<start point>]::
+'git checkout' -b|-B <new-branch> [<start-point>]::
 
 	Specifying `-b` causes a new branch to be created as if
 	linkgit:git-branch[1] were called and then checked out.  In
@@ -145,11 +145,11 @@ as `ours` (i.e. "our shared canonical history"), while what you did
 on your side branch as `theirs` (i.e. "one contributor's work on top
 of it").
 
--b <new_branch>::
+-b <new-branch>::
 	Create a new branch named `<new_branch>` and start it at
 	`<start_point>`; see linkgit:git-branch[1] for details.
 
--B <new_branch>::
+-B <new-branch>::
 	Creates the branch `<new_branch>` and start it at `<start_point>`;
 	if it already exists, then reset it to `<start_point>`. This is
 	equivalent to running "git branch" with "-f"; see
Documentation/git-cherry-pick.txt +3 -3
index 5d750314b29..78dcc9171fb 100644
@@ -8,7 +8,7 @@ git-cherry-pick - Apply the changes introduced by some existing commits
 SYNOPSIS
 --------
 [verse]
-'git cherry-pick' [--edit] [-n] [-m parent-number] [-s] [-x] [--ff]
+'git cherry-pick' [--edit] [-n] [-m <parent-number>] [-s] [-x] [--ff]
 		  [-S[<keyid>]] <commit>...
 'git cherry-pick' (--continue | --skip | --abort | --quit)
 
@@ -81,8 +81,8 @@ OPTIONS
 	described above, and `-r` was to disable it.  Now the
 	default is not to do `-x` so this option is a no-op.
 
--m parent-number::
---mainline parent-number::
+-m <parent-number>::
+--mainline <parent-number>::
 	Usually you cannot cherry-pick a merge because you do not know which
 	side of the merge should be considered the mainline.  This
 	option specifies the parent number (starting from 1) of
Documentation/git-config.txt +18 -18
index 992225f6129..96330bf4001 100644
@@ -9,20 +9,20 @@ git-config - Get and set repository or global options
 SYNOPSIS
 --------
 [verse]
-'git config' [<file-option>] [--type=<type>] [--fixed-value] [--show-origin] [--show-scope] [-z|--null] name [value [value-pattern]]
-'git config' [<file-option>] [--type=<type>] --add name value
-'git config' [<file-option>] [--type=<type>] [--fixed-value] --replace-all name value [value-pattern]
-'git config' [<file-option>] [--type=<type>] [--show-origin] [--show-scope] [-z|--null] [--fixed-value] --get name [value-pattern]
-'git config' [<file-option>] [--type=<type>] [--show-origin] [--show-scope] [-z|--null] [--fixed-value] --get-all name [value-pattern]
-'git config' [<file-option>] [--type=<type>] [--show-origin] [--show-scope] [-z|--null] [--fixed-value] [--name-only] --get-regexp name_regex [value-pattern]
-'git config' [<file-option>] [--type=<type>] [-z|--null] --get-urlmatch name URL
-'git config' [<file-option>] [--fixed-value] --unset name [value-pattern]
-'git config' [<file-option>] [--fixed-value] --unset-all name [value-pattern]
-'git config' [<file-option>] --rename-section old_name new_name
-'git config' [<file-option>] --remove-section name
+'git config' [<file-option>] [--type=<type>] [--fixed-value] [--show-origin] [--show-scope] [-z|--null] <name> [<value> [<value-pattern>]]
+'git config' [<file-option>] [--type=<type>] --add <name> <value>
+'git config' [<file-option>] [--type=<type>] [--fixed-value] --replace-all <name> <value> [<value-pattern>]
+'git config' [<file-option>] [--type=<type>] [--show-origin] [--show-scope] [-z|--null] [--fixed-value] --get <name> [<value-pattern>]
+'git config' [<file-option>] [--type=<type>] [--show-origin] [--show-scope] [-z|--null] [--fixed-value] --get-all <name> [<value-pattern>]
+'git config' [<file-option>] [--type=<type>] [--show-origin] [--show-scope] [-z|--null] [--fixed-value] [--name-only] --get-regexp <name-regex> [<value-pattern>]
+'git config' [<file-option>] [--type=<type>] [-z|--null] --get-urlmatch <name> <URL>
+'git config' [<file-option>] [--fixed-value] --unset <name> [<value-pattern>]
+'git config' [<file-option>] [--fixed-value] --unset-all <name> [<value-pattern>]
+'git config' [<file-option>] --rename-section <old-name> <new-name>
+'git config' [<file-option>] --remove-section <name>
 'git config' [<file-option>] [--show-origin] [--show-scope] [-z|--null] [--name-only] -l | --list
-'git config' [<file-option>] --get-color name [default]
-'git config' [<file-option>] --get-colorbool name [stdout-is-tty]
+'git config' [<file-option>] --get-color <name> [<default>]
+'git config' [<file-option>] --get-colorbool <name> [<stdout-is-tty>]
 'git config' [<file-option>] -e | --edit
 
 DESCRIPTION
@@ -102,7 +102,7 @@ OPTIONS
 	in which section and variable names are lowercased, but subsection
 	names are not.
 
---get-urlmatch name URL::
+--get-urlmatch <name> <URL>::
 	When given a two-part name section.key, the value for
 	section.<url>.key whose <url> part matches the best to the
 	given URL is returned (if no such key exists, the value for
@@ -145,7 +145,7 @@ See also <<FILES>>.
 	read from or written to if `extensions.worktreeConfig` is
 	present. If not it's the same as `--local`.
 
--f config-file::
+-f <config-file>::
 --file config-file::
 	For writing options: write to the specified file rather than the
 	repository `.git/config`.
@@ -155,7 +155,7 @@ available files.
 +
 See also <<FILES>>.
 
---blob blob::
+--blob <blob>::
 	Similar to `--file` but use the given blob instead of a file. E.g.
 	you can use 'master:.gitmodules' to read values from the file
 	'.gitmodules' in the master branch. See "SPECIFYING REVISIONS"
@@ -246,7 +246,7 @@ Valid `<type>`'s include:
 	all queried config options with the scope of that value
 	(local, global, system, command).
 
---get-colorbool name [stdout-is-tty]::
+--get-colorbool <name> [<stdout-is-tty>]::
 
 	Find the color setting for `name` (e.g. `color.diff`) and output
 	"true" or "false".  `stdout-is-tty` should be either "true" or
@@ -257,7 +257,7 @@ Valid `<type>`'s include:
 	When the color setting for `name` is undefined, the command uses
 	`color.ui` as fallback.
 
---get-color name [default]::
+--get-color <name> [<default>]::
 
 	Find the color configured for `name` (e.g. `color.diff.new`) and
 	output it as the ANSI color escape sequence to the standard
Documentation/git-credential.txt +1 -1
index 206e3c5f407..fc1733a6163 100644
@@ -8,7 +8,7 @@ git-credential - Retrieve and store user credentials
 SYNOPSIS
 --------
 ------------------
-git credential <fill|approve|reject>
+git credential [fill|approve|reject]
 ------------------
 
 DESCRIPTION
Documentation/git-cvsexportcommit.txt +2 -2
index 00154b6c85a..41c8a8a05c1 100644
@@ -9,8 +9,8 @@ git-cvsexportcommit - Export a single commit to a CVS checkout
 SYNOPSIS
 --------
 [verse]
-'git cvsexportcommit' [-h] [-u] [-v] [-c] [-P] [-p] [-a] [-d cvsroot]
-	[-w cvsworkdir] [-W] [-f] [-m msgprefix] [PARENTCOMMIT] COMMITID
+'git cvsexportcommit' [-h] [-u] [-v] [-c] [-P] [-p] [-a] [-d <cvsroot>]
+	[-w <cvs-workdir>] [-W] [-f] [-m <msgprefix>] [<parent-commit>] <commit-id>
 
 
 DESCRIPTION
Documentation/git-cvsimport.txt +5 -5
index de1ebed67d7..f47416d1c44 100644
@@ -9,11 +9,11 @@ git-cvsimport - Salvage your data out of another SCM people love to hate
 SYNOPSIS
 --------
 [verse]
-'git cvsimport' [-o <branch-for-HEAD>] [-h] [-v] [-d <CVSROOT>]
+'git cvsimport' [-o <branch-for-HEAD>] [-h] [-v] [-d <cvsroot>]
 	      [-A <author-conv-file>] [-p <options-for-cvsps>] [-P <file>]
-	      [-C <git_repository>] [-z <fuzz>] [-i] [-k] [-u] [-s <subst>]
+	      [-C <git-repository>] [-z <fuzz>] [-i] [-k] [-u] [-s <subst>]
 	      [-a] [-m] [-M <regex>] [-S <regex>] [-L <commitlimit>]
-	      [-r <remote>] [-R] [<CVS_module>]
+	      [-r <remote>] [-R] [<CVS-module>]
 
 
 DESCRIPTION
@@ -52,14 +52,14 @@ OPTIONS
 -v::
 	Verbosity: let 'cvsimport' report what it is doing.
 
--d <CVSROOT>::
+-d <cvsroot>::
 	The root of the CVS archive. May be local (a simple path) or remote;
 	currently, only the :local:, :ext: and :pserver: access methods
 	are supported. If not given, 'git cvsimport' will try to read it
 	from `CVS/Root`. If no such file exists, it checks for the
 	`CVSROOT` environment variable.
 
-<CVS_module>::
+<CVS-module>::
 	The CVS module you want to import. Relative to <CVSROOT>.
 	If not given, 'git cvsimport' tries to read it from
 	`CVS/Repository`.
Documentation/git-fsck.txt +1 -1
index bd596619c0d..5088783dccb 100644
@@ -12,7 +12,7 @@ SYNOPSIS
 'git fsck' [--tags] [--root] [--unreachable] [--cache] [--no-reflogs]
 	 [--[no-]full] [--strict] [--verbose] [--lost-found]
 	 [--[no-]dangling] [--[no-]progress] [--connectivity-only]
-	 [--[no-]name-objects] [<object>*]
+	 [--[no-]name-objects] [<object>...]
 
 DESCRIPTION
 -----------
Documentation/git-gui.txt +1 -1
index c9d7e96214f..e8f3ccb4337 100644
@@ -8,7 +8,7 @@ git-gui - A portable graphical interface to Git
 SYNOPSIS
 --------
 [verse]
-'git gui' [<command>] [arguments]
+'git gui' [<command>] [<arguments>]
 
 DESCRIPTION
 -----------
Documentation/git-help.txt +3 -3
index 96d5f598b4b..44ea63cc6d3 100644
@@ -9,14 +9,14 @@ SYNOPSIS
 --------
 [verse]
 'git help' [-a|--all [--[no-]verbose]]
-	   [[-i|--info] [-m|--man] [-w|--web]] [COMMAND|GUIDE]
+	   [[-i|--info] [-m|--man] [-w|--web]] [<command>|<guide>]
 'git help' [-g|--guides]
 'git help' [-c|--config]
 
 DESCRIPTION
 -----------
 
-With no options and no COMMAND or GUIDE given, the synopsis of the 'git'
+With no options and no '<command>' or '<guide>' given, the synopsis of the 'git'
 command and a list of the most commonly used Git commands are printed
 on the standard output.
 
@@ -33,7 +33,7 @@ variables.
 
 If an alias is given, git shows the definition of the alias on
 standard output. To get the manual page for the aliased command, use
-`git COMMAND --help`.
+`git <command> --help`.
 
 Note that `git --help ...` is identical to `git help ...` because the
 former is internally converted into the latter.
Documentation/git-http-fetch.txt +1 -1
index 9fa17b60e43..fa4bb6cbc3e 100644
@@ -9,7 +9,7 @@ git-http-fetch - Download from a remote Git repository via HTTP
 SYNOPSIS
 --------
 [verse]
-'git http-fetch' [-c] [-t] [-a] [-d] [-v] [-w filename] [--recover] [--stdin | --packfile=<hash> | <commit>] <url>
+'git http-fetch' [-c] [-t] [-a] [-d] [-v] [-w <filename>] [--recover] [--stdin | --packfile=<hash> | <commit>] <url>
 
 DESCRIPTION
 -----------
Documentation/git-http-push.txt +6 -7
index ea03a4eeb0f..6b29d38a2a6 100644
@@ -63,16 +63,15 @@ of such patterns separated by a colon ":" (this means that a ref name
 cannot have a colon in it).  A single pattern '<name>' is just a
 shorthand for '<name>:<name>'.
 
-Each pattern pair consists of the source side (before the colon)
-and the destination side (after the colon).  The ref to be
-pushed is determined by finding a match that matches the source
-side, and where it is pushed is determined by using the
-destination side.
+Each pattern pair '<src>:<dst>' consists of the source side (before
+the colon) and the destination side (after the colon).  The ref to be
+pushed is determined by finding a match that matches the source side,
+and where it is pushed is determined by using the destination side.
 
- - It is an error if <src> does not match exactly one of the
+ - It is an error if '<src>' does not match exactly one of the
    local refs.
 
- - If <dst> does not match any remote ref, either
+ - If '<dst>' does not match any remote ref, either
 
    * it has to start with "refs/"; <dst> is used as the
      destination literally in this case.
Documentation/git-init-db.txt +1 -1
index 648a6cd78ad..18bf1a3c8ce 100644
@@ -9,7 +9,7 @@ git-init-db - Creates an empty Git repository
 SYNOPSIS
 --------
 [verse]
-'git init-db' [-q | --quiet] [--bare] [--template=<template_directory>] [--separate-git-dir <git dir>] [--shared[=<permissions>]]
+'git init-db' [-q | --quiet] [--bare] [--template=<template-directory>] [--separate-git-dir <git-dir>] [--shared[=<permissions>]]
 
 
 DESCRIPTION
Documentation/git-init.txt +13 -12
index b611d80697d..99bcfc9f2c9 100644
@@ -9,10 +9,10 @@ git-init - Create an empty Git repository or reinitialize an existing one
 SYNOPSIS
 --------
 [verse]
-'git init' [-q | --quiet] [--bare] [--template=<template_directory>]
-	  [--separate-git-dir <git dir>] [--object-format=<format>]
+'git init' [-q | --quiet] [--bare] [--template=<template-directory>]
+	  [--separate-git-dir <git-dir>] [--object-format=<format>]
 	  [-b <branch-name> | --initial-branch=<branch-name>]
-	  [--shared[=<permissions>]] [directory]
+	  [--shared[=<permissions>]] [<directory>]
 
 
 DESCRIPTION
@@ -57,12 +57,12 @@ values are 'sha1' and (if enabled) 'sha256'.  'sha1' is the default.
 +
 include::object-format-disclaimer.txt[]
 
---template=<template_directory>::
+--template=<template-directory>::
 
 Specify the directory from which templates will be used.  (See the "TEMPLATE
 DIRECTORY" section below.)
 
---separate-git-dir=<git dir>::
+--separate-git-dir=<git-dir>::
 
 Instead of initializing the repository as a directory to either `$GIT_DIR` or
 `./.git/`, create a text file there containing the path to the actual
@@ -79,7 +79,7 @@ repository.  If not specified, fall back to the default name (currently
 `master`, but this is subject to change in the future; the name can be
 customized via the `init.defaultBranch` configuration variable).
 
---shared[=(false|true|umask|group|all|world|everybody|0xxx)]::
+--shared[=(false|true|umask|group|all|world|everybody|0<octal>)]::
 
 Specify that the Git repository is to be shared amongst several users.  This
 allows users belonging to the same group to push into that
@@ -110,13 +110,14 @@ the repository permissions.
 
 Same as 'group', but make the repository readable by all users.
 
-'0xxx'::
+'0<octal>'::
 
-'0xxx' is an octal number and each file will have mode '0xxx'. '0xxx' will
-override users' umask(2) value (and not only loosen permissions as 'group' and
-'all' does). '0640' will create a repository which is group-readable, but not
-group-writable or accessible to others. '0660' will create a repo that is
-readable and writable to the current user and group, but inaccessible to others.
+'0<octal>' is an octal number and each file will have mode
+'0<octal>'. '0<octal>' will override users' umask(2) value (and not
+only loosen permissions as 'group' and 'all' does). '0640' will create
+a repository which is group-readable, but not group-writable or
+accessible to others. '0660' will create a repo that is readable and
+writable to the current user and group, but inaccessible to others.
 --
 
 By default, the configuration flag `receive.denyNonFastForwards` is enabled
Documentation/git-log.txt +2 -2
index 0498e7bacbe..ac8e96265c3 100644
@@ -9,7 +9,7 @@ git-log - Show commit logs
 SYNOPSIS
 --------
 [verse]
-'git log' [<options>] [<revision range>] [[--] <path>...]
+'git log' [<options>] [<revision-range>] [[--] <path>...]
 
 DESCRIPTION
 -----------
@@ -81,7 +81,7 @@ produced by `--stat`, etc.
 
 include::line-range-options.txt[]
 
-<revision range>::
+<revision-range>::
 	Show only commits in the specified revision range.  When no
 	<revision range> is specified, it defaults to `HEAD` (i.e. the
 	whole history leading to the current commit).  `origin..HEAD`
Documentation/git-ls-files.txt +2 -2
index 6d11ab506b7..64dcedce97d 100644
@@ -10,8 +10,8 @@ SYNOPSIS
 --------
 [verse]
 'git ls-files' [-z] [-t] [-v] [-f]
-		(--[cached|deleted|others|ignored|stage|unmerged|killed|modified])*
-		(-[c|d|o|i|s|u|k|m])*
+		[--(cached|deleted|others|ignored|stage|unmerged|killed|modified)...]
+		[-(c|d|o|i|s|u|k|m)...]
 		[--eol]
 		[--deduplicate]
 		[-x <pattern>|--exclude=<pattern>]
Documentation/git-merge-index.txt +1 -1
index 2ab84a91e53..eea56b3154e 100644
@@ -9,7 +9,7 @@ git-merge-index - Run a merge for files needing merging
 SYNOPSIS
 --------
 [verse]
-'git merge-index' [-o] [-q] <merge-program> (-a | [--] <file>*)
+'git merge-index' [-o] [-q] <merge-program> (-a | ( [--] <file>...) )
 
 DESCRIPTION
 -----------
Documentation/git-p4.txt +3 -3
index 38e5257b2a4..f2de6400302 100644
@@ -9,10 +9,10 @@ git-p4 - Import from and submit to Perforce repositories
 SYNOPSIS
 --------
 [verse]
-'git p4 clone' [<sync options>] [<clone options>] <p4 depot path>...
-'git p4 sync' [<sync options>] [<p4 depot path>...]
+'git p4 clone' [<sync-options>] [<clone-options>] <p4-depot-path>...
+'git p4 sync' [<sync-options>] [<p4-depot-path>...]
 'git p4 rebase'
-'git p4 submit' [<submit options>] [<master branch name>]
+'git p4 submit' [<submit-options>] [<master-branch-name>]
 
 
 DESCRIPTION
Documentation/git-pack-objects.txt +2 -2
index dbfd1f90175..f8344e1e5ba 100644
@@ -13,8 +13,8 @@ SYNOPSIS
 	[--no-reuse-delta] [--delta-base-offset] [--non-empty]
 	[--local] [--incremental] [--window=<n>] [--depth=<n>]
 	[--revs [--unpacked | --all]] [--keep-pack=<pack-name>]
-	[--stdout [--filter=<filter-spec>] | base-name]
-	[--shallow] [--keep-true-parents] [--[no-]sparse] < object-list
+	[--stdout [--filter=<filter-spec>] | <base-name>]
+	[--shallow] [--keep-true-parents] [--[no-]sparse] < <object-list>
 
 
 DESCRIPTION
Documentation/git-pack-redundant.txt +1 -1
index f2869da5728..7c55c476b65 100644
@@ -9,7 +9,7 @@ git-pack-redundant - Find redundant pack files
 SYNOPSIS
 --------
 [verse]
-'git pack-redundant' [ --verbose ] [ --alt-odb ] < --all | .pack filename ... >
+'git pack-redundant' [ --verbose ] [ --alt-odb ] ( --all | <.pack-filename>... )
 
 DESCRIPTION
 -----------
Documentation/git-reflog.txt +2 -2
index ff487ff77d3..5ced7ad4f8b 100644
@@ -17,12 +17,12 @@ The command takes various subcommands, and different options
 depending on the subcommand:
 
 [verse]
-'git reflog' ['show'] [log-options] [<ref>]
+'git reflog' ['show'] [<log-options>] [<ref>]
 'git reflog expire' [--expire=<time>] [--expire-unreachable=<time>]
 	[--rewrite] [--updateref] [--stale-fix]
 	[--dry-run | -n] [--verbose] [--all [--single-worktree] | <refs>...]
 'git reflog delete' [--rewrite] [--updateref]
-	[--dry-run | -n] [--verbose] ref@\{specifier\}...
+	[--dry-run | -n] [--verbose] <ref>@\{<specifier>\}...
 'git reflog exists' <ref>
 
 Reference logs, or "reflogs", record when the tips of branches and
Documentation/git-shortlog.txt +2 -2
index c9c7f3065ca..5babc07f094 100644
@@ -8,7 +8,7 @@ git-shortlog - Summarize 'git log' output
 SYNOPSIS
 --------
 [verse]
-'git shortlog' [<options>] [<revision range>] [[--] <path>...]
+'git shortlog' [<options>] [<revision-range>] [[--] <path>...]
 git log --pretty=short | 'git shortlog' [<options>]
 
 DESCRIPTION
@@ -89,7 +89,7 @@ counts both authors and co-authors.
 If width is `0` (zero) then indent the lines of the output without wrapping
 them.
 
-<revision range>::
+<revision-range>::
 	Show only commits in the specified revision range.  When no
 	<revision range> is specified, it defaults to `HEAD` (i.e. the
 	whole history leading to the current commit).  `origin..HEAD`
Documentation/git-sparse-checkout.txt +1 -1
index 42056ee9ff9..92b2ca374df 100644
@@ -11,7 +11,7 @@ given by a list of patterns.
 SYNOPSIS
 --------
 [verse]
-'git sparse-checkout <subcommand> [options]'
+'git sparse-checkout <subcommand> [<options>...]'
 
 
 DESCRIPTION
Documentation/git-stage.txt +1 -1
index 25bcda936db..2f6aaa75b9a 100644
@@ -9,7 +9,7 @@ git-stage - Add file contents to the staging area
 SYNOPSIS
 --------
 [verse]
-'git stage' args...
+'git stage' <arg>...
 
 
 DESCRIPTION
Documentation/git-web--browse.txt +1 -1
index 8d162b56c59..3cf0b3df04f 100644
@@ -8,7 +8,7 @@ git-web--browse - Git helper script to launch a web browser
 SYNOPSIS
 --------
 [verse]
-'git web{litdd}browse' [<options>] <url|file>...
+'git web{litdd}browse' [<options>] (<url>|<file>)...
 
 DESCRIPTION
 -----------

base-commit: 9d530dc0024503ab4218fe6c4395b8a0aa245478

Signature · 1 line
gitgitgadget
#1 lore raw
Quoted 1 line · Jean-Noël Avila via GitGitGadget

doc: fix grammar rules in commands'syntax

Missing space.

Quoted 5 lines

According to the coding guidelines, the placeholders must:
* be in small letters
* enclosed in angle brackets

Some other rules are also applied.

Perhaps just mention them here?

* use hyphens rather than underscores or spaces between words
* indicate repetition with ... rather than *

were some that I saw while reading.

Overall, the patch looks good. One or two notes below...

Documentation/git-checkout.txt SYNOPSIS · line 11

Quoted 6 lines

---

Documentation/git-checkout.txt +1 -1
@@ -11,7 +11,7 @@ SYNOPSIS
-'git checkout' [-q] [-f] [-m] [[-b|-B|--orphan] <new_branch>] [<start_point>]
+'git checkout' [-q] [-f] [-m] [[-b|-B|--orphan] <new-branch>] [<start-point>]

Nice to see this attention to detail.

Documentation/git-checkout.txt You could omit `<branch>`, in which case the command degenerates to · line 43

Quoted 3 lines
Documentation/git-checkout.txt +1 -1
@@ -43,7 +43,7 @@ You could omit `<branch>`, in which case the command degenerates to
-'git checkout' -b|-B <new_branch> [<start point>]::
+'git checkout' -b|-B <new-branch> [<start-point>]::

Likewise.

Documentation/git-checkout.txt as `ours` (i.e. "our shared canonical history"), while what you did · line 147

Quoted 5 lines
Documentation/git-checkout.txt +1 -1
@@ -145,11 +145,11 @@ as `ours` (i.e. "our shared canonical history"), while what you did
--b <new_branch>::
+-b <new-branch>::
        Create a new branch named `<new_branch>` and start it at
        `<start_point>`; see linkgit:git-branch[1] for details.

The names in the description need fixing too: s/_/-/g

Documentation/git-checkout.txt as `ours` (i.e. "our shared canonical history"), while what you did · line 155

Quoted 5 lines
Documentation/git-checkout.txt +1 -1
--B <new_branch>::
+-B <new-branch>::
        Creates the branch `<new_branch>` and start it at `<start_point>`;
        if it already exists, then reset it to `<start_point>`. This is
        equivalent to running "git branch" with "-f"; see

Likewise: s/_/-/g

Documentation/git-config.txt git-config - Get and set repository or global options · line 9

Quoted 4 lines
Documentation/git-config.txt +1 -1
@@ -9,20 +9,20 @@ git-config - Get and set repository or global options
-'git config' [<file-option>] [--type=<type>] [-z|--null] --get-urlmatch name URL
+'git config' [<file-option>] [--type=<type>] [-z|--null] --get-urlmatch <name> <URL>

The commit message talks about using lowercase, so perhaps? s/URL/url/

Documentation/git-config.txt OPTIONS · line 105

Quoted 6 lines
Documentation/git-config.txt +1 -1
@@ -102,7 +102,7 @@ OPTIONS
---get-urlmatch name URL::
+--get-urlmatch <name> <URL>::
        When given a two-part name section.key, the value for
        section.<url>.key whose <url> part matches the best to the
        given URL is returned (if no such key exists, the value for

Ditto. In fact, lowercase <url> is already used in the description, but not in the item line.

If wanting to match other documentation files, this would also be typeset as <url> rather than <url> in the description text, but that change may be well outside the scope of this patch.

Documentation/git-config.txt See also <<FILES>>. · line 146

Quoted 4 lines
Documentation/git-config.txt +1 -1
@@ -145,7 +145,7 @@ See also <<FILES>>.
--f config-file::
+-f <config-file>::
 --file config-file::

Need to apply brackets around config-file for the --file option too, just as you did for short -f.

Documentation/git-config.txt Valid `<type>`'s include: · line 249

Quoted 6 lines
Documentation/git-config.txt +1 -1
@@ -246,7 +246,7 @@ Valid `<type>`'s include:
---get-colorbool name [stdout-is-tty]::
+--get-colorbool <name> [<stdout-is-tty>]::
 
        Find the color setting for `name` (e.g. `color.diff`) and output
        "true" or "false".  `stdout-is-tty` should be either "true" or

Should you wrap stdout-is-tty within angle brackets within the description too?

Documentation/git-config.txt Valid `<type>`'s include: · line 260

Quoted 6 lines
Documentation/git-config.txt +1 -1
@@ -257,7 +257,7 @@ Valid `<type>`'s include:
---get-color name [default]::
+--get-color <name> [<default>]::
 
        Find the color configured for `name` (e.g. `color.diff.new`) and
        output it as the ANSI color escape sequence to the standard

And here? <name> rather than name?

Documentation/git-credential.txt git-credential - Retrieve and store user credentials · line 8

Quoted 4 lines
Documentation/git-credential.txt +1 -1
@@ -8,7 +8,7 @@ git-credential - Retrieve and store user credentials
-git credential <fill|approve|reject>
+git credential [fill|approve|reject]

The original was indeed wrong but the revised text is also slightly misleading. The square brackets suggest that the "action" is optional, but in fact it's not, so this should be using parentheses:

git credential (fill|approve|reject)

Also, the usage text in builtin/credential.c is wrong:

% git credential
usage: git credential [fill|approve|reject]

It should be using parentheses, as well, but fixing that may be outside the scope of this patch (and can be done later).

Documentation/git-cvsimport.txt git-cvsimport - Salvage your data out of another SCM people love to hate · line 13

Quoted 10 lines
Documentation/git-cvsimport.txt +3 -3
@@ -9,11 +9,11 @@ git-cvsimport - Salvage your data out of another SCM people love to hate
-'git cvsimport' [-o <branch-for-HEAD>] [-h] [-v] [-d <CVSROOT>]
+'git cvsimport' [-o <branch-for-HEAD>] [-h] [-v] [-d <cvsroot>]
              [-A <author-conv-file>] [-p <options-for-cvsps>] [-P <file>]
-             [-C <git_repository>] [-z <fuzz>] [-i] [-k] [-u] [-s <subst>]
+             [-C <git-repository>] [-z <fuzz>] [-i] [-k] [-u] [-s <subst>]
              [-a] [-m] [-M <regex>] [-S <regex>] [-L <commitlimit>]
-             [-r <remote>] [-R] [<CVS_module>]
+             [-r <remote>] [-R] [<CVS-module>]

I wonder if <commitlimit> should be changed to <commit-limit>?

Documentation/git-fsck.txt SYNOPSIS · line 15

Quoted 7 lines
Documentation/git-fsck.txt +1 -1
@@ -12,7 +12,7 @@ SYNOPSIS
 'git fsck' [--tags] [--root] [--unreachable] [--cache] [--no-reflogs]
         [--[no-]full] [--strict] [--verbose] [--lost-found]
         [--[no-]dangling] [--[no-]progress] [--connectivity-only]
-        [--[no-]name-objects] [<object>*]
+        [--[no-]name-objects] [<object>...]

Okay.

Documentation/git-init.txt repository. If not specified, fall back to the default name (currently · line 79

Quoted 4 lines
Documentation/git-init.txt +1 -1
@@ -79,7 +79,7 @@ repository.  If not specified, fall back to the default name (currently
---shared[=(false|true|umask|group|all|world|everybody|0xxx)]::
+--shared[=(false|true|umask|group|all|world|everybody|0<octal>)]::

This feels slightly unusual; I'd have expected just plain <octal> without the leading 0, and...

Documentation/git-init.txt the repository permissions. · line 110

Quoted 3 lines
Documentation/git-init.txt +1 -1
@@ -110,13 +110,14 @@ the repository permissions.
-'0xxx'::
+'0<octal>'::

.. this would also say just <octal>, and...

Documentation/git-init.txt the repository permissions. · line 120

Quoted 11 lines
Documentation/git-init.txt +6 -5
-'0xxx' is an octal number and each file will have mode '0xxx'. '0xxx' will
-override users' umask(2) value (and not only loosen permissions as 'group' and
-'all' does). '0640' will create a repository which is group-readable, but not
-group-writable or accessible to others. '0660' will create a repo that is
-readable and writable to the current user and group, but inaccessible to others.
+'0<octal>' is an octal number and each file will have mode
+'0<octal>'. '0<octal>' will override users' umask(2) value (and not
+only loosen permissions as 'group' and 'all' does). '0640' will create
+a repository which is group-readable, but not group-writable or
+accessible to others. '0660' will create a repo that is readable and
+writable to the current user and group, but inaccessible to others.

... this would then go on to explain that <octal> "... is an octal number starting with literal 0...".

But it's subjective and others might feel differently.

Documentation/git-log.txt produced by `--stat`, etc. · line 84

Quoted 7 lines
Documentation/git-log.txt +1 -1
@@ -81,7 +81,7 @@ produced by `--stat`, etc.
-<revision range>::
+<revision-range>::
        Show only commits in the specified revision range.  When no
        <revision range> is specified, it defaults to `HEAD` (i.e. the
        whole history leading to the current commit).  `origin..HEAD`

Also need to fix the description: s/<revision range>/<revision-range>/

Documentation/git-ls-files.txt SYNOPSIS · line 12

Quoted 7 lines
Documentation/git-ls-files.txt +2 -2
@@ -10,8 +10,8 @@ SYNOPSIS
 'git ls-files' [-z] [-t] [-v] [-f]
-               (--[cached|deleted|others|ignored|stage|unmerged|killed|modified])*
-               (-[c|d|o|i|s|u|k|m])*
+               [--(cached|deleted|others|ignored|stage|unmerged|killed|modified)...]
+               [-(c|d|o|i|s|u|k|m)...]

I wonder if we could make it easier on users if written like this:

    [--cached|--deleted|--others|--blah|--blah]...
    [-c|-d|-o|-i|-s|-u|-k|-m]...

But that's subjective.

Documentation/git-pack-redundant.txt git-pack-redundant - Find redundant pack files · line 9

Quoted 4 lines
Documentation/git-pack-redundant.txt +1 -1
@@ -9,7 +9,7 @@ git-pack-redundant - Find redundant pack files
-'git pack-redundant' [ --verbose ] [ --alt-odb ] < --all | .pack filename ... >
+'git pack-redundant' [ --verbose ] [ --alt-odb ] ( --all | <.pack-filename>... )

I'd probably drop the leading dot in <.pack-filename>. It shouldn't be difficult for a reader to figure out that these are the files with .pack extension, and if they do need help understanding that, then probably better to explain in prose that <pack-filename> is a pack file with .pack extension.

Documentation/git-shortlog.txt counts both authors and co-authors. · line 92

Quoted 7 lines
Documentation/git-shortlog.txt +1 -1
@@ -89,7 +89,7 @@ counts both authors and co-authors.
-<revision range>::
+<revision-range>::
        Show only commits in the specified revision range.  When no
        <revision range> is specified, it defaults to `HEAD` (i.e. the
        whole history leading to the current commit).  `origin..HEAD`

Need to update the description to: s/<revision range>/<revision-range>/

Documentation/git-sparse-checkout.txt given by a list of patterns. · line 11

Quoted 4 lines
Documentation/git-sparse-checkout.txt +1 -1
@@ -11,7 +11,7 @@ given by a list of patterns.
-'git sparse-checkout <subcommand> [options]'
+'git sparse-checkout <subcommand> [<options>...]'

The addition of ... would make more sense if it was spelled "option", but with it already being plural "options", I have trouble understanding why ... is added.

Documentation/git-stage.txt git-stage - Add file contents to the staging area · line 9

Quoted 4 lines
Documentation/git-stage.txt +1 -1
@@ -9,7 +9,7 @@ git-stage - Add file contents to the staging area
-'git stage' args...
+'git stage' <arg>...

It's subjective, but I find plain <args> easier to interpret than <arg>.... Does our documentation favor one form over the other, or is there a random mix?

Documentation/git-web--browse.txt git-web--browse - Git helper script to launch a web browser · line 8

Quoted 4 lines
Documentation/git-web--browse.txt +1 -1
@@ -8,7 +8,7 @@ git-web--browse - Git helper script to launch a web browser
-'git web{litdd}browse' [<options>] <url|file>...
+'git web{litdd}browse' [<options>] (<url>|<file>)...

Good.

#2 lore raw
Quoted 10 lines · Eric Sunshine
Quoted 1 line · Jean-Noël Avila via GitGitGadget

doc: fix grammar rules in commands'syntax

Missing space.

Quoted 4 lines

According to the coding guidelines, the placeholders must:
* be in small letters
* enclosed in angle brackets

Quoted 6 lines
Quoted 1 line

Some other rules are also applied.

Perhaps just mention them here?

* use hyphens rather than underscores or spaces between words

There are a lot more places with spaces within placeholders. Will extend.

Quoted 5 lines

* indicate repetition with ... rather than *

were some that I saw while reading.

Overall, the patch looks good. One or two notes below...

Thanks for taking time to review this cumbersome patch.

Quoted 16 lines

Documentation/git-checkout.txt SYNOPSIS · line 11

Quoted 7 lines

---

Documentation/git-checkout.txt +1 -1
@@ -11,7 +11,7 @@ SYNOPSIS
-'git checkout' [-q] [-f] [-m] [[-b|-B|--orphan] <new_branch>] [<start_point>]
+'git checkout' [-q] [-f] [-m] [[-b|-B|--orphan] <new-branch>] [<start-point>]

Nice to see this attention to detail.

Documentation/git-checkout.txt You could omit `<branch>`, in which case the command degenerates to · line 43

Quoted 3 lines
Documentation/git-checkout.txt +1 -1
@@ -43,7 +43,7 @@ You could omit `<branch>`, in which case the command degenerates to
-'git checkout' -b|-B <new_branch> [<start point>]::
+'git checkout' -b|-B <new-branch> [<start-point>]::

Likewise.

Quoted 7 lines

Documentation/git-checkout.txt as `ours` (i.e. "our shared canonical history"), while what you did · line 147

Quoted 5 lines
Documentation/git-checkout.txt +1 -1
@@ -145,11 +145,11 @@ as `ours` (i.e. "our shared canonical history"), while what you did
--b <new_branch>::
+-b <new-branch>::
        Create a new branch named `<new_branch>` and start it at
        `<start_point>`; see linkgit:git-branch[1] for details.

The names in the description need fixing too: s/_/-/g

Ack

Quoted 8 lines

Documentation/git-checkout.txt as `ours` (i.e. "our shared canonical history"), while what you did · line 155

Quoted 6 lines
Documentation/git-checkout.txt +1 -1
--B <new_branch>::
+-B <new-branch>::
        Creates the branch `<new_branch>` and start it at `<start_point>`;
        if it already exists, then reset it to `<start_point>`. This is
        equivalent to running "git branch" with "-f"; see

Likewise: s/_/-/g

Ack

Quoted 7 lines

Documentation/git-config.txt git-config - Get and set repository or global options · line 9

Quoted 5 lines
Documentation/git-config.txt +1 -1
@@ -9,20 +9,20 @@ git-config - Get and set repository or global options
-'git config' [<file-option>] [--type=<type>] [-z|--null] --get-urlmatch name URL
+'git config' [<file-option>] [--type=<type>] [-z|--null] --get-urlmatch <name> <URL>

The commit message talks about using lowercase, so perhaps? s/URL/url/

URL is not a word, but an acronym. Lowercasing it looks weird, but that's personal taste. URL appears with a lot different casings across the documents.

Quoted 27 lines

Documentation/git-config.txt OPTIONS · line 105

Quoted 7 lines
Documentation/git-config.txt +1 -1
@@ -102,7 +102,7 @@ OPTIONS
---get-urlmatch name URL::
+--get-urlmatch <name> <URL>::
        When given a two-part name section.key, the value for
        section.<url>.key whose <url> part matches the best to the
        given URL is returned (if no such key exists, the value for

Ditto. In fact, lowercase <url> is already used in the description, but not in the item line.

If wanting to match other documentation files, this would also be typeset as <url> rather than <url> in the description text, but that change may be well outside the scope of this patch.

Documentation/git-config.txt See also <<FILES>>. · line 146

Quoted 4 lines
Documentation/git-config.txt +1 -1
@@ -145,7 +145,7 @@ See also <<FILES>>.
--f config-file::
+-f <config-file>::
 --file config-file::

Need to apply brackets around config-file for the --file option too, just as you did for short -f.

Quoted 4 lines
Documentation/git-config.txt +1 -1
@@ -246,7 +246,7 @@ Valid `<type>`'s include:
---get-colorbool name [stdout-is-tty]::
+--get-colorbool <name> [<stdout-is-tty>]::
 
Quoted 6 lines

Documentation/git-config.txt Valid `<type>`'s include: · line 252

Quoted 2 lines
Documentation/git-config.txt +0 -0
        Find the color setting for `name` (e.g. `color.diff`) and output
        "true" or "false".  `stdout-is-tty` should be either "true" or

Should you wrap stdout-is-tty within angle brackets within the description too?

The rules for referring to placeholder in text wasn't defined (use angle brackets or not, use monospace or not) . Usage in manpages is diverse. Logically this would be monospace for any token of the synopsis and angle bracket when it's a placeholder.

However, this is a larger fixup in manpages, that would require its own patch.

Quoted 102 lines

Documentation/git-config.txt Valid `<type>`'s include: · line 260

Quoted 6 lines
Documentation/git-config.txt +1 -1
@@ -257,7 +257,7 @@ Valid `<type>`'s include:
---get-color name [default]::
+--get-color <name> [<default>]::
 
        Find the color configured for `name` (e.g. `color.diff.new`) and
        output it as the ANSI color escape sequence to the standard

And here? <name> rather than name?

Documentation/git-credential.txt git-credential - Retrieve and store user credentials · line 8

Quoted 4 lines
Documentation/git-credential.txt +1 -1
@@ -8,7 +8,7 @@ git-credential - Retrieve and store user credentials
-git credential <fill|approve|reject>
+git credential [fill|approve|reject]

The original was indeed wrong but the revised text is also slightly misleading. The square brackets suggest that the "action" is optional, but in fact it's not, so this should be using parentheses:

git credential (fill|approve|reject)

Also, the usage text in builtin/credential.c is wrong:

% git credential
usage: git credential [fill|approve|reject]

It should be using parentheses, as well, but fixing that may be outside the scope of this patch (and can be done later).

Documentation/git-cvsimport.txt git-cvsimport - Salvage your data out of another SCM people love to hate · line 13

Quoted 10 lines
Documentation/git-cvsimport.txt +3 -3
@@ -9,11 +9,11 @@ git-cvsimport - Salvage your data out of another SCM people love to hate
-'git cvsimport' [-o <branch-for-HEAD>] [-h] [-v] [-d <CVSROOT>]
+'git cvsimport' [-o <branch-for-HEAD>] [-h] [-v] [-d <cvsroot>]
              [-A <author-conv-file>] [-p <options-for-cvsps>] [-P <file>]
-             [-C <git_repository>] [-z <fuzz>] [-i] [-k] [-u] [-s <subst>]
+             [-C <git-repository>] [-z <fuzz>] [-i] [-k] [-u] [-s <subst>]
              [-a] [-m] [-M <regex>] [-S <regex>] [-L <commitlimit>]
-             [-r <remote>] [-R] [<CVS_module>]
+             [-r <remote>] [-R] [<CVS-module>]

I wonder if <commitlimit> should be changed to <commit-limit>?

Documentation/git-fsck.txt SYNOPSIS · line 15

Quoted 7 lines
Documentation/git-fsck.txt +1 -1
@@ -12,7 +12,7 @@ SYNOPSIS
 'git fsck' [--tags] [--root] [--unreachable] [--cache] [--no-reflogs]
         [--[no-]full] [--strict] [--verbose] [--lost-found]
         [--[no-]dangling] [--[no-]progress] [--connectivity-only]
-        [--[no-]name-objects] [<object>*]
+        [--[no-]name-objects] [<object>...]

Okay.

Documentation/git-init.txt repository. If not specified, fall back to the default name (currently · line 79

Quoted 4 lines
Documentation/git-init.txt +1 -1
@@ -79,7 +79,7 @@ repository.  If not specified, fall back to the default name (currently
---shared[=(false|true|umask|group|all|world|everybody|0xxx)]::
+--shared[=(false|true|umask|group|all|world|everybody|0<octal>)]::

This feels slightly unusual; I'd have expected just plain <octal> without the leading 0, and...

Documentation/git-init.txt the repository permissions. · line 110

Quoted 3 lines
Documentation/git-init.txt +1 -1
@@ -110,13 +110,14 @@ the repository permissions.
-'0xxx'::
+'0<octal>'::

.. this would also say just <octal>, and...

Documentation/git-init.txt the repository permissions. · line 120

Quoted 11 lines
Documentation/git-init.txt +6 -5
-'0xxx' is an octal number and each file will have mode '0xxx'. '0xxx' will
-override users' umask(2) value (and not only loosen permissions as 'group' and
-'all' does). '0640' will create a repository which is group-readable, but not
-group-writable or accessible to others. '0660' will create a repo that is
-readable and writable to the current user and group, but inaccessible to others.
+'0<octal>' is an octal number and each file will have mode
+'0<octal>'. '0<octal>' will override users' umask(2) value (and not
+only loosen permissions as 'group' and 'all' does). '0640' will create
+a repository which is group-readable, but not group-writable or
+accessible to others. '0660' will create a repo that is readable and
+writable to the current user and group, but inaccessible to others.

... this would then go on to explain that <octal> "... is an octal number starting with literal 0...".

But it's subjective and others might feel differently.

Documentation/git-log.txt produced by `--stat`, etc. · line 84

Quoted 7 lines
Documentation/git-log.txt +1 -1
@@ -81,7 +81,7 @@ produced by `--stat`, etc.
-<revision range>::
+<revision-range>::
        Show only commits in the specified revision range.  When no
        <revision range> is specified, it defaults to `HEAD` (i.e. the
        whole history leading to the current commit).  `origin..HEAD`

Also need to fix the description: s/<revision range>/<revision-range>/

Documentation/git-ls-files.txt SYNOPSIS · line 12

Quoted 7 lines
Documentation/git-ls-files.txt +2 -2
@@ -10,8 +10,8 @@ SYNOPSIS
 'git ls-files' [-z] [-t] [-v] [-f]
-               (--[cached|deleted|others|ignored|stage|unmerged|killed|modified])*
-               (-[c|d|o|i|s|u|k|m])*
+               [--(cached|deleted|others|ignored|stage|unmerged|killed|modified)...]
+               [-(c|d|o|i|s|u|k|m)...]

I wonder if we could make it easier on users if written like this:

Quoted 4 lines
    [--cached|--deleted|--others|--blah|--blah]...
    [-c|-d|-o|-i|-s|-u|-k|-m]...

But that's subjective.

It would better match synopsis of other commands with the following grammar which expresses alternative options as explained in the remainder of the manpage:

[-c|--cached] [-d|--deleted] [-m|--modified] and so on.

Quoted 12 lines

Documentation/git-pack-redundant.txt git-pack-redundant - Find redundant pack files · line 9

Quoted 5 lines
Documentation/git-pack-redundant.txt +1 -1
@@ -9,7 +9,7 @@ git-pack-redundant - Find redundant pack files
-'git pack-redundant' [ --verbose ] [ --alt-odb ] < --all | .pack filename ... >
+'git pack-redundant' [ --verbose ] [ --alt-odb ] ( --all | <.pack-filename>... )

I'd probably drop the leading dot in <.pack-filename>. It shouldn't be difficult for a reader to figure out that these are the files with .pack extension, and if they do need help understanding that, then probably better to explain in prose that <pack-filename> is a pack file with .pack extension.

Quoted 9 lines

Documentation/git-shortlog.txt counts both authors and co-authors. · line 92

Quoted 7 lines
Documentation/git-shortlog.txt +1 -1
@@ -89,7 +89,7 @@ counts both authors and co-authors.
-<revision range>::
+<revision-range>::
        Show only commits in the specified revision range.  When no
        <revision range> is specified, it defaults to `HEAD` (i.e. the
        whole history leading to the current commit).  `origin..HEAD`

Need to update the description to: s/<revision range>/<revision-range>/

Ack

Quoted 26 lines

Documentation/git-sparse-checkout.txt given by a list of patterns. · line 11

Quoted 5 lines
Documentation/git-sparse-checkout.txt +1 -1
@@ -11,7 +11,7 @@ given by a list of patterns.
-'git sparse-checkout <subcommand> [options]'
+'git sparse-checkout <subcommand> [<options>...]'

The addition of ... would make more sense if it was spelled "option", but with it already being plural "options", I have trouble understanding why ... is added.

Documentation/git-stage.txt git-stage - Add file contents to the staging area · line 9

Quoted 4 lines
Documentation/git-stage.txt +1 -1
@@ -9,7 +9,7 @@ git-stage - Add file contents to the staging area
-'git stage' args...
+'git stage' <arg>...

It's subjective, but I find plain <args> easier to interpret than <arg>.... Does our documentation favor one form over the other, or is there a random mix?

Documentation/git-web--browse.txt git-web--browse - Git helper script to launch a web browser · line 8

Quoted 4 lines
Documentation/git-web--browse.txt +1 -1
@@ -8,7 +8,7 @@ git-web--browse - Git helper script to launch a web browser
-'git web{litdd}browse' [<options>] <url|file>...
+'git web{litdd}browse' [<options>] (<url>|<file>)...

Good.

#3 lore raw
In reply to Jean-Noël Avila via GitGitGadget

Documentation/git-archimport.txt git-archimport - Import a GNU Arch repository into Git · line 13

Quoted 11 lines · Jean-Noël Avila via GitGitGadget
Documentation/git-archimport.txt +2 -2
@@ -9,8 +9,8 @@ git-archimport - Import a GNU Arch repository into Git
 SYNOPSIS
 --------
 [verse]
-'git archimport' [-h] [-v] [-o] [-a] [-f] [-T] [-D depth] [-t tempdir]
-               <archive/branch>[:<git-branch>] ...
+'git archimport' [-h] [-v] [-o] [-a] [-f] [-T] [-D <depth>] [-t <tempdir>]
+              <archive>/<branch>[:<git-branch>]...

Your rewrite makes it seem like one would write, e.g., "myarch/master" with a literal slash, whereas my initial thought was that the original tried to express something like "(<archive> | <branch>)". But I have zero experience with "GNU Arch" and git-archimport, so I can't really tell whether your rewrite is for the better or not. :-)

In any case, this document goes on to write "<archive/branch>" several times. Supposedly, they would all want to be changed as well. There's also an instance of "Archive/branch identifier ..." to maybe look into.

Documentation/git-cvsimport.txt git-cvsimport - Salvage your data out of another SCM people love to hate · line 15

Quoted 12 lines
Documentation/git-cvsimport.txt +2 -2
@@ -9,11 +9,11 @@ git-cvsimport - Salvage your data out of another SCM people love to hate
 SYNOPSIS
 --------
 [verse]
-'git cvsimport' [-o <branch-for-HEAD>] [-h] [-v] [-d <CVSROOT>]
+'git cvsimport' [-o <branch-for-HEAD>] [-h] [-v] [-d <cvsroot>]
 
-<CVS_module>::
+<CVS-module>::
        The CVS module you want to import. Relative to <CVSROOT>.

Here's another "<CVSROOT>".

Documentation/git-http-push.txt of such patterns separated by a colon ":" (this means that a ref name · line 67

Quoted 13 lines
Documentation/git-http-push.txt +4 -5
@@ -63,16 +63,15 @@ of such patterns separated by a colon ":" (this means that a ref name
 
-Each pattern pair consists of the source side (before the colon)
-and the destination side (after the colon).  The ref to be
-pushed is determined by finding a match that matches the source
-side, and where it is pushed is determined by using the
-destination side.
+Each pattern pair '<src>:<dst>' consists of the source side (before
+the colon) and the destination side (after the colon).  The ref to be
+pushed is determined by finding a match that matches the source side,
+and where it is pushed is determined by using the destination side.

This looks like the insertion of "'<src>:<dst>' early on, where the rest of the changes are just follow-on line-wrapping.

I wonder if this patch could benefit from being broken into smaller pieces. Maybe a few preliminaries like "change <foo|bar|baz> to (foo|bar|baz)" and the like, then even if the final patch is "large", it will not be *as large*? But there are clearly sub-topics here, such as "change <some_arg> to <some-arg>" and "change arg to <arg>". Or maybe this doesn't make sense as an approach to cutting this patch into smaller pieces, but I thought I'd mention it.

Documentation/git-http-push.txt of such patterns separated by a colon ":" (this means that a ref name · line 74

Quoted 6 lines
Documentation/git-http-push.txt +2 -2
- - It is an error if <src> does not match exactly one of the
+ - It is an error if '<src>' does not match exactly one of the
    local refs.
 
- - If <dst> does not match any remote ref, either
+ - If '<dst>' does not match any remote ref, either

I believe these match Junio's preference, so ok. But again, this looks like it could go in a separate patch from a lot of these other changes as a way of keeping to somewhat focused changes.

Documentation/git-http-push.txt of such patterns separated by a colon ":" (this means that a ref name · line 73

Quoted 4 lines
Documentation/git-http-push.txt +2 -2
-               (--[cached|deleted|others|ignored|stage|unmerged|killed|modified])*
-               (-[c|d|o|i|s|u|k|m])*
+               [--(cached|deleted|others|ignored|stage|unmerged|killed|modified)...]
+               [-(c|d|o|i|s|u|k|m)...]

Sort of cute how this saves on repeating the "--" by pulling it out. Anyway, nothing new in your patch. :-)

Thanks for unifying these things.

Martin

#4 lore raw
Quoted 7 lines · Martin Ågren
Quoted 3 lines · Jean-Noël Avila via GitGitGadget

-<CVS_module>::
+<CVS-module>::
The CVS module you want to import. Relative to <CVSROOT>.

Here's another "<CVSROOT>".

This one might need a bit of special consideration. Not only is <CVSROOT> an argument to the -d option, but CVSROOT is also an environment variable (which can be overridden by -d). So, perhaps this particular instance ought to be simply CVSROOT (with the backticks).

#5 lore raw
In reply to Martin Ågren

Le 27/10/2021 à 20:56, Martin Ågren a écrit :

Quoted 19 lines

Documentation/git-archimport.txt git-archimport - Import a GNU Arch repository into Git · line 13

Quoted 11 lines · Jean-Noël Avila via GitGitGadget
Documentation/git-archimport.txt +2 -2
@@ -9,8 +9,8 @@ git-archimport - Import a GNU Arch repository into Git
 SYNOPSIS
 --------
 [verse]
-'git archimport' [-h] [-v] [-o] [-a] [-f] [-T] [-D depth] [-t tempdir]
-               <archive/branch>[:<git-branch>] ...
+'git archimport' [-h] [-v] [-o] [-a] [-f] [-T] [-D <depth>] [-t <tempdir>]
+              <archive>/<branch>[:<git-branch>]...

Your rewrite makes it seem like one would write, e.g., "myarch/master" with a literal slash, whereas my initial thought was that the original tried to express something like "(<archive> | <branch>)". But I have zero experience with "GNU Arch" and git-archimport, so I can't really tell whether your rewrite is for the better or not. :-)

The <archive>/<branch> grammar is the one available in the usage of the command.

Quoted 4 lines

In any case, this document goes on to write "<archive/branch>" several times. Supposedly, they would all want to be changed as well. There's also an instance of "Archive/branch identifier ..." to maybe look into.

Ack. All the changes in a single commit

Quoted 10 lines
Quoted 9 lines
Documentation/git-cvsimport.txt +1 -1
@@ -9,11 +9,11 @@ git-cvsimport - Salvage your data out of another SCM people love to hate
 SYNOPSIS
 --------
 [verse]
-'git cvsimport' [-o <branch-for-HEAD>] [-h] [-v] [-d <CVSROOT>]
+'git cvsimport' [-o <branch-for-HEAD>] [-h] [-v] [-d <cvsroot>]
Quoted 5 lines

Documentation/git-cvsimport.txt OPTIONS · line 63

Quoted 3 lines
Documentation/git-cvsimport.txt +1 -1
-<CVS_module>::
+<CVS-module>::
        The CVS module you want to import. Relative to <CVSROOT>.

Here's another "<CVSROOT>".

Is this an environment variable or a placeholder?

Quoted 5 lines
Quoted 4 lines
Documentation/git-http-push.txt +0 -0
@@ -63,16 +63,15 @@ of such patterns separated by a colon ":" (this means that a ref name
Quoted 13 lines

Documentation/git-http-push.txt of such patterns separated by a colon ":" (this means that a ref name · line 69

Quoted 9 lines
Documentation/git-http-push.txt +4 -5
-Each pattern pair consists of the source side (before the colon)
-and the destination side (after the colon).  The ref to be
-pushed is determined by finding a match that matches the source
-side, and where it is pushed is determined by using the
-destination side.
+Each pattern pair '<src>:<dst>' consists of the source side (before
+the colon) and the destination side (after the colon).  The ref to be
+pushed is determined by finding a match that matches the source side,
+and where it is pushed is determined by using the destination side.

This looks like the insertion of "'<src>:<dst>' early on, where the rest of the changes are just follow-on line-wrapping.

Strict line-wrapping doesn't work well with version control in free text. And it doesn't work well either with asciidoc, where some unlucky wrapping can generate spurious formatting.

Quoted 7 lines

I wonder if this patch could benefit from being broken into smaller pieces. Maybe a few preliminaries like "change <foo|bar|baz> to (foo|bar|baz)" and the like, then even if the final patch is "large", it will not be *as large*? But there are clearly sub-topics here, such as "change <some_arg> to <some-arg>" and "change arg to <arg>". Or maybe this doesn't make sense as an approach to cutting this patch into smaller pieces, but I thought I'd mention it.

The changes are muliplying. I will split them.

Quoted 12 lines

Documentation/git-http-push.txt of such patterns separated by a colon ":" (this means that a ref name · line 74

Quoted 7 lines
Documentation/git-http-push.txt +2 -2
- - It is an error if <src> does not match exactly one of the
+ - It is an error if '<src>' does not match exactly one of the
    local refs.
 
- - If <dst> does not match any remote ref, either
+ - If '<dst>' does not match any remote ref, either

I believe these match Junio's preference, so ok. But again, this looks like it could go in a separate patch from a lot of these other changes as a way of keeping to somewhat focused changes.

Quoted 7 lines

Documentation/git-http-push.txt of such patterns separated by a colon ":" (this means that a ref name · line 72

Quoted 4 lines
Documentation/git-http-push.txt +2 -2
-               (--[cached|deleted|others|ignored|stage|unmerged|killed|modified])*
-               (-[c|d|o|i|s|u|k|m])*
+               [--(cached|deleted|others|ignored|stage|unmerged|killed|modified)...]
+               [-(c|d|o|i|s|u|k|m)...]

Sort of cute how this saves on repeating the "--" by pulling it out. Anyway, nothing new in your patch. :-)

To me, the grammar should express at the token level (not like here), and anyway, this synopsis is not correct: even if these options are allowed to be repeated several times on the command line, this is useless and some of them have the same meaning (and this should be shown). This way of expressing the grammar induce the reader into thinking that this is some kind of inner grammar to the command.

Jean-Noël

#6 lore raw
Quoted 8 lines · Jean-Noël Avila
Quoted 6 lines · Martin Ågren
Quoted 2 lines · Jean-Noël Avila via GitGitGadget

-'git cvsimport' [-o <branch-for-HEAD>] [-h] [-v] [-d <CVSROOT>] +'git cvsimport' [-o <branch-for-HEAD>] [-h] [-v] [-d <cvsroot>]

Quoted 7 lines
Quoted 5 lines
Quoted 3 lines

-<CVS_module>::
+<CVS-module>::
The CVS module you want to import. Relative to <CVSROOT>.

Here's another "<CVSROOT>".

Is this an environment variable or a placeholder?

I don't know. I see that you've dropped this from v2. Makes sense.

Martin

#7 lore raw

v2 cover doc: fix grammar rules in commands' syntax

In reply to Jean-Noël Avila via GitGitGadget

There are command expressions which do not follow the grammar syntax rules.

According to the coding guidelines, the placeholders must:

* be in small letters
* enclosed in angle brackets
* use hyphens as spaces

They also must represent tokens' meaning as atomic entities.

Some fixups for git-credential, git-ls-files, git-init and git-http-push.

changes since v1:

* split changes across simpler commits

Jean-Noël Avila (9):
doc: fix git credential synopsis
doc: split placeholders as individual tokens
doc: express grammar placeholders between angle brackets
doc: use only hyphens as word separators in placeholders
doc: git-ls-files: express options as optional alternatives
doc: use three dots for indicating repetition instead of star
doc: uniformize <URL> placeholders' case
doc: git-http-push: describe the refs as pattern pairs
doc: git-init: clarify file modes in octal.

 Documentation/date-formats.txt        |  4 +--
 Documentation/git-archimport.txt      | 14 ++++----
 Documentation/git-checkout.txt        | 36 +++++++++----------
 Documentation/git-cherry-pick.txt     |  6 ++--
 Documentation/git-clone.txt           |  8 ++---
 Documentation/git-config.txt          | 46 ++++++++++++------------
 Documentation/git-credential.txt      |  2 +-
 Documentation/git-cvsexportcommit.txt |  4 +--
 Documentation/git-cvsimport.txt       |  8 ++---
 Documentation/git-diff-files.txt      |  2 +-
 Documentation/git-diff-index.txt      |  2 +-
 Documentation/git-diff-tree.txt       |  2 +-
 Documentation/git-fsck.txt            |  2 +-
 Documentation/git-gui.txt             |  2 +-
 Documentation/git-help.txt            |  6 ++--
 Documentation/git-http-fetch.txt      |  2 +-
 Documentation/git-http-push.txt       | 15 ++++----
 Documentation/git-init-db.txt         |  2 +-
 Documentation/git-init.txt            | 26 +++++++-------
 Documentation/git-log.txt             |  8 ++---
 Documentation/git-ls-files.txt        |  6 ++--
 Documentation/git-merge-index.txt     |  2 +-
 Documentation/git-p4.txt              |  8 ++---
 Documentation/git-pack-objects.txt    |  4 +--
 Documentation/git-pack-redundant.txt  |  2 +-
 Documentation/git-reflog.txt          |  4 +--
 Documentation/git-remote.txt          |  8 ++---
 Documentation/git-request-pull.txt    |  8 ++---
 Documentation/git-shortlog.txt        |  8 ++---
 Documentation/git-sparse-checkout.txt |  2 +-
 Documentation/git-stage.txt           |  2 +-
 Documentation/git-svn.txt             |  2 +-
 Documentation/git-web--browse.txt     |  2 +-
 Documentation/gitcredentials.txt      |  4 +--
 Documentation/gitsubmodules.txt       |  2 +-
 Documentation/gitworkflows.txt        |  6 ++--
 Documentation/pretty-formats.txt      | 52 +++++++++++++--------------
 Documentation/urls-remotes.txt        |  8 ++---
 builtin/credential.c                  |  2 +-
 39 files changed, 165 insertions(+), 164 deletions(-)

base-commit: 9d530dc0024503ab4218fe6c4395b8a0aa245478
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1066%2Fjnavila%2Ffix_manpages_placeholders-v2
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1066/jnavila/fix_manpages_placeholders-v2
Pull-Request: https://github.com/gitgitgadget/git/pull/1066

Range-diff vs v1:

  -:  ----------- >  1:  4d1fa80d471 doc: fix git credential synopsis
  -:  ----------- >  2:  0045fe6faea doc: split placeholders as individual tokens
  1:  605236f6d49 !  3:  4d2d198f572 doc: fix grammar rules in commands'syntax

@@ Metadata
Author: Jean-Noël Avila <[email protected]>

## Commit message ##
- doc: fix grammar rules in commands'syntax
+ doc: express grammar placeholders between angle brackets

- According to the coding guidelines, the placeholders must:
- * be in small letters
- * enclosed in angle brackets
-
- Some other rules are also applied.
+ This rules discerns user inputs from verbatim options in the
+ synopsis.

- ## Documentation/git-archimport.txt ##
-@@ Documentation/git-archimport.txt: git-archimport - Import a GNU Arch repository into Git
- SYNOPSIS
- --------
- [verse]
--'git archimport' [-h] [-v] [-o] [-a] [-f] [-T] [-D depth] [-t tempdir]
-- <archive/branch>[:<git-branch>] ...
-+'git archimport' [-h] [-v] [-o] [-a] [-f] [-T] [-D <depth>] [-t <tempdir>]
-+ <archive>/<branch>[:<git-branch>]...
-
- DESCRIPTION
- -----------
-
- ## Documentation/git-checkout.txt ##
-@@ Documentation/git-checkout.txt: SYNOPSIS
- 'git checkout' [-q] [-f] [-m] [<branch>]
- 'git checkout' [-q] [-f] [-m] --detach [<branch>]
- 'git checkout' [-q] [-f] [-m] [--detach] <commit>
--'git checkout' [-q] [-f] [-m] [[-b|-B|--orphan] <new_branch>] [<start_point>]
-+'git checkout' [-q] [-f] [-m] [[-b|-B|--orphan] <new-branch>] [<start-point>]
- 'git checkout' [-f|--ours|--theirs|-m|--conflict=<style>] [<tree-ish>] [--] <pathspec>...
- 'git checkout' [-f|--ours|--theirs|-m|--conflict=<style>] [<tree-ish>] --pathspec-from-file=<file> [--pathspec-file-nul]
- 'git checkout' (-p|--patch) [<tree-ish>] [--] [<pathspec>...]
-@@ Documentation/git-checkout.txt: You could omit <branch>, in which case the command degenerates to
- rather expensive side-effects to show only the tracking information,
- if exists, for the current branch.
-
--'git checkout' -b|-B <new_branch> [<start point>]::
-+'git checkout' -b|-B <new-branch> [<start-point>]::
-
- Specifying -b causes a new branch to be created as if
- linkgit:git-branch[1] were called and then checked out. In
-@@ Documentation/git-checkout.txt: as ours (i.e. "our shared canonical history"), while what you did
- on your side branch as theirs (i.e. "one contributor's work on top
- of it").
-
---b <new_branch>::
-+-b <new-branch>::
- Create a new branch named <new_branch> and start it at
- <start_point>; see linkgit:git-branch[1] for details.
-
---B <new_branch>::
-+-B <new-branch>::
- Creates the branch <new_branch> and start it at <start_point>;
- if it already exists, then reset it to <start_point>. This is
- equivalent to running "git branch" with "-f"; see
-
## Documentation/git-cherry-pick.txt ##
@@ Documentation/git-cherry-pick.txt: git-cherry-pick - Apply the changes introduced by some existing commits
SYNOPSIS
@@ Documentation/git-config.txt: OPTIONS
---get-urlmatch name URL::
+--get-urlmatch <name> <URL>::
When given a two-part name section.key, the value for
- section.<url>.key whose <url> part matches the best to the
+- section.<url>.key whose <url> part matches the best to the
++ section.<URL>.key whose <URL> part matches the best to the
given URL is returned (if no such key exists, the value for
+ section.key is used as a fallback). When given just the
+ section as name, do so for all the keys in the section and
@@ Documentation/git-config.txt: See also <<FILES>>.
read from or written to if extensions.worktreeConfig is
present. If not it's the same as --local.
@@ Documentation/git-config.txt: Valid <type>'s include:
---get-colorbool name [stdout-is-tty]::
+--get-colorbool <name> [<stdout-is-tty>]::

- Find the color setting for name (e.g. color.diff) and output
- "true" or "false". stdout-is-tty should be either "true" or
-@@ Documentation/git-config.txt: Valid <type>'s include:
+- Find the color setting for name (e.g. color.diff) and output
+- "true" or "false". stdout-is-tty should be either "true" or
++ Find the color setting for <name> (e.g. color.diff) and output
++ "true" or "false". <stdout-is-tty> should be either "true" or
+ "false", and is taken into account when configuration says
+- "auto". If stdout-is-tty is missing, then checks the standard
++ "auto". If <stdout-is-tty> is missing, then checks the standard
+ output of the command itself, and exits with status 0 if color
+ is to be used, or exits with status 1 otherwise.
When the color setting for name is undefined, the command uses color.ui as fallback.

@@ Documentation/git-config.txt: Valid <type>'s include:

Find the color configured for name (e.g. color.diff.new) and
output it as the ANSI color escape sequence to the standard
-
- ## Documentation/git-credential.txt ##
-@@ Documentation/git-credential.txt: git-credential - Retrieve and store user credentials
- SYNOPSIS
- --------
- ------------------
--git credential <fill|approve|reject>
-+git credential [fill|approve|reject]
- ------------------
+@@ Documentation/git-config.txt: Valid <type>'s include:

- DESCRIPTION
+ --default <value>::
+ When using --get, and the requested variable is not found, behave as if
+- <value> were the value assigned to the that variable. ++ <value> were the value assigned to the that variable. +
+ CONFIGURATION
+ -------------

## Documentation/git-cvsexportcommit.txt ##
@@ Documentation/git-cvsexportcommit.txt: git-cvsexportcommit - Export a single commit to a CVS checkout
@@ Documentation/git-cvsexportcommit.txt: git-cvsexportcommit - Export a single com

DESCRIPTION

- ## Documentation/git-cvsimport.txt ##
-@@ Documentation/git-cvsimport.txt: git-cvsimport - Salvage your data out of another SCM people love to hate
- SYNOPSIS
- --------
- [verse]
--'git cvsimport' [-o <branch-for-HEAD>] [-h] [-v] [-d <CVSROOT>]
-+'git cvsimport' [-o <branch-for-HEAD>] [-h] [-v] [-d <cvsroot>]
- [-A <author-conv-file>] [-p <options-for-cvsps>] [-P <file>]
-- [-C <git_repository>] [-z <fuzz>] [-i] [-k] [-u] [-s <subst>]
-+ [-C <git-repository>] [-z <fuzz>] [-i] [-k] [-u] [-s <subst>]
- [-a] [-m] [-M <regex>] [-S <regex>] [-L <commitlimit>]
-- [-r <remote>] [-R] [<CVS_module>]
-+ [-r <remote>] [-R] [<CVS-module>]
-
-
- DESCRIPTION
-@@ Documentation/git-cvsimport.txt: OPTIONS
- -v::
- Verbosity: let 'cvsimport' report what it is doing.
-
---d <CVSROOT>::
-+-d <cvsroot>::
- The root of the CVS archive. May be local (a simple path) or remote;
- currently, only the :local:, :ext: and :pserver: access methods
- are supported. If not given, 'git cvsimport' will try to read it
- from CVS/Root. If no such file exists, it checks for the
- CVSROOT environment variable.
-
--<CVS_module>::
-+<CVS-module>::
- The CVS module you want to import. Relative to <CVSROOT>.
- If not given, 'git cvsimport' tries to read it from
- CVS/Repository.
-
- ## Documentation/git-fsck.txt ##
-@@ Documentation/git-fsck.txt: SYNOPSIS
- 'git fsck' [--tags] [--root] [--unreachable] [--cache] [--no-reflogs]
- [--[no-]full] [--strict] [--verbose] [--lost-found]
- [--[no-]dangling] [--[no-]progress] [--connectivity-only]
-- [--[no-]name-objects] [<object>*]
-+ [--[no-]name-objects] [<object>...]
-
- DESCRIPTION
- -----------
-
## Documentation/git-gui.txt ##
@@ Documentation/git-gui.txt: git-gui - A portable graphical interface to Git
SYNOPSIS
@@ Documentation/git-http-fetch.txt: git-http-fetch - Download from a remote Git re
DESCRIPTION
-----------

- ## Documentation/git-http-push.txt ##
-@@ Documentation/git-http-push.txt: of such patterns separated by a colon ":" (this means that a ref name
- cannot have a colon in it). A single pattern '<name>' is just a
- shorthand for '<name>:<name>'.
-
--Each pattern pair consists of the source side (before the colon)
--and the destination side (after the colon). The ref to be
--pushed is determined by finding a match that matches the source
--side, and where it is pushed is determined by using the
--destination side.
-+Each pattern pair '<src>:<dst>' consists of the source side (before
-+the colon) and the destination side (after the colon). The ref to be
-+pushed is determined by finding a match that matches the source side,
-+and where it is pushed is determined by using the destination side.
-
-- - It is an error if <src> does not match exactly one of the
-+ - It is an error if '<src>' does not match exactly one of the
- local refs.
-
-- - If <dst> does not match any remote ref, either
-+ - If '<dst>' does not match any remote ref, either
-
- * it has to start with "refs/"; <dst> is used as the
- destination literally in this case.
-
- ## Documentation/git-init-db.txt ##
-@@ Documentation/git-init-db.txt: git-init-db - Creates an empty Git repository
- SYNOPSIS
- --------
- [verse]
--'git init-db' [-q | --quiet] [--bare] [--template=<template_directory>] [--separate-git-dir <git dir>] [--shared[=<permissions>]] -+'git init-db' [-q | --quiet] [--bare] [--template=<template-directory>] [--separate-git-dir <git-dir>] [--shared[=<permissions>]] -
-
- DESCRIPTION
-
## Documentation/git-init.txt ##
-@@ Documentation/git-init.txt: git-init - Create an empty Git repository or reinitialize an existing one
- SYNOPSIS
- --------
- [verse]
--'git init' [-q | --quiet] [--bare] [--template=<template_directory>]
-- [--separate-git-dir <git dir>] [--object-format=<format>]
-+'git init' [-q | --quiet] [--bare] [--template=<template-directory>]
-+ [--separate-git-dir <git-dir>] [--object-format=<format>]
+@@ Documentation/git-init.txt: SYNOPSIS
+ 'git init' [-q | --quiet] [--bare] [--template=<template_directory>]
+ [--separate-git-dir <git dir>] [--object-format=<format>]
[-b <branch-name> | --initial-branch=<branch-name>]
- [--shared[=<permissions>]] [directory]
+ [--shared[=<permissions>]] [<directory>]

- DESCRIPTION
-@@ Documentation/git-init.txt: values are 'sha1' and (if enabled) 'sha256'. 'sha1' is the default.
- +
- include::object-format-disclaimer.txt[]
-
----template=<template_directory>::
-+--template=<template-directory>::
-
- Specify the directory from which templates will be used. (See the "TEMPLATE
- DIRECTORY" section below.)
-
----separate-git-dir=<git dir>::
-+--separate-git-dir=<git-dir>::
-
- Instead of initializing the repository as a directory to either $GIT_DIR or
- ./.git/, create a text file there containing the path to the actual
-@@ Documentation/git-init.txt: repository. If not specified, fall back to the default name (currently
- master, but this is subject to change in the future; the name can be
- customized via the init.defaultBranch configuration variable).
-
----shared[=(false|true|umask|group|all|world|everybody|0xxx)]::
-+--shared[=(false|true|umask|group|all|world|everybody|0<octal>)]::
-
- Specify that the Git repository is to be shared amongst several users. This
- allows users belonging to the same group to push into that
-@@ Documentation/git-init.txt: the repository permissions.
-
- Same as 'group', but make the repository readable by all users.
-
--'0xxx'::
-+'0<octal>'::
-
--'0xxx' is an octal number and each file will have mode '0xxx'. '0xxx' will --override users' umask(2) value (and not only loosen permissions as 'group' and --'all' does). '0640' will create a repository which is group-readable, but not --group-writable or accessible to others. '0660' will create a repo that is --readable and writable to the current user and group, but inaccessible to others. -+'0<octal>' is an octal number and each file will have mode
-+'0<octal>'. '0<octal>' will override users' umask(2) value (and not
-+only loosen permissions as 'group' and 'all' does). '0640' will create
-+a repository which is group-readable, but not group-writable or
-+accessible to others. '0660' will create a repo that is readable and
-+writable to the current user and group, but inaccessible to others.
- --
-
- By default, the configuration flag receive.denyNonFastForwards is enabled
-
- ## Documentation/git-log.txt ##
-@@ Documentation/git-log.txt: git-log - Show commit logs
- SYNOPSIS
- --------
- [verse]
--'git log' [<options>] [<revision range>] [[--] <path>...]
-+'git log' [<options>] [<revision-range>] [[--] <path>...]
-
- DESCRIPTION
- -----------
-@@ Documentation/git-log.txt: produced by --stat, etc.
-
- include::line-range-options.txt[]
-
--<revision range>::
-+<revision-range>::
- Show only commits in the specified revision range. When no
- <revision range> is specified, it defaults to HEAD (i.e. the
- whole history leading to the current commit). origin..HEAD
-
- ## Documentation/git-ls-files.txt ##
-@@ Documentation/git-ls-files.txt: SYNOPSIS
- --------
- [verse]
- 'git ls-files' [-z] [-t] [-v] [-f]
-- (--[cached|deleted|others|ignored|stage|unmerged|killed|modified])*
-- (-[c|d|o|i|s|u|k|m])*
-+ [--(cached|deleted|others|ignored|stage|unmerged|killed|modified)...]
-+ [-(c|d|o|i|s|u|k|m)...]
- [--eol]
- [--deduplicate]
- [-x <pattern>|--exclude=<pattern>]
-
- ## Documentation/git-merge-index.txt ##
-@@ Documentation/git-merge-index.txt: git-merge-index - Run a merge for files needing merging
- SYNOPSIS
- --------
- [verse]
--'git merge-index' [-o] [-q] <merge-program> (-a | [--] <file>*)
-+'git merge-index' [-o] [-q] <merge-program> (-a | ( [--] <file>...) )
-
- DESCRIPTION
- -----------
-
- ## Documentation/git-p4.txt ##
-@@ Documentation/git-p4.txt: git-p4 - Import from and submit to Perforce repositories
- SYNOPSIS
- --------
- [verse]
--'git p4 clone' [<sync options>] [<clone options>] <p4 depot path>...
--'git p4 sync' [<sync options>] [<p4 depot path>...]
-+'git p4 clone' [<sync-options>] [<clone-options>] <p4-depot-path>...
-+'git p4 sync' [<sync-options>] [<p4-depot-path>...]
- 'git p4 rebase'
--'git p4 submit' [<submit options>] [<master branch name>]
-+'git p4 submit' [<submit-options>] [<master-branch-name>]
-
-
DESCRIPTION

## Documentation/git-pack-objects.txt ##
@@ Documentation/git-pack-redundant.txt: git-pack-redundant - Find redundant pack f
--------
[verse]
-'git pack-redundant' [ --verbose ] [ --alt-odb ] < --all | .pack filename ... >
-+'git pack-redundant' [ --verbose ] [ --alt-odb ] ( --all | <.pack-filename>... ) ++'git pack-redundant' [ --verbose ] [ --alt-odb ] ( --all | <pack-filename>... )

DESCRIPTION
-----------
@@ Documentation/git-reflog.txt: The command takes various subcommands, and differe

Reference logs, or "reflogs", record when the tips of branches and

- ## Documentation/git-shortlog.txt ##
-@@ Documentation/git-shortlog.txt: git-shortlog - Summarize 'git log' output
- SYNOPSIS
- --------
- [verse]
--'git shortlog' [<options>] [<revision range>] [[--] <path>...] -+'git shortlog' [<options>] [<revision-range>] [[--] <path>...]
- git log --pretty=short | 'git shortlog' [<options>]
-
- DESCRIPTION
-@@ Documentation/git-shortlog.txt: counts both authors and co-authors.
- If width is 0 (zero) then indent the lines of the output without wrapping
- them.
-
--<revision range>::
-+<revision-range>::
- Show only commits in the specified revision range. When no
- <revision range> is specified, it defaults to HEAD (i.e. the
- whole history leading to the current commit). origin..HEAD
-
## Documentation/git-sparse-checkout.txt ##
@@ Documentation/git-sparse-checkout.txt: given by a list of patterns.
SYNOPSIS
--------
[verse]
-'git sparse-checkout <subcommand> [options]'
-+'git sparse-checkout <subcommand> [<options>...]'
++'git sparse-checkout <subcommand> [<options>]'

DESCRIPTION
@@ Documentation/git-stage.txt: git-stage - Add file contents to the staging area

DESCRIPTION
-
- ## Documentation/git-web--browse.txt ##
-@@ Documentation/git-web--browse.txt: git-web--browse - Git helper script to launch a web browser
- SYNOPSIS
- --------
- [verse]
--'git web{litdd}browse' [<options>] <url|file>...
-+'git web{litdd}browse' [<options>] (<url>|<file>)...
-
- DESCRIPTION
- -----------

  -:  ----------- >  4:  984b6d687a2 doc: use only hyphens as word separators in placeholders
  -:  ----------- >  5:  8e078e6ea17 doc: git-ls-files: express options as optional alternatives
  -:  ----------- >  6:  0c7b1d53808 doc: use three dots for indicating repetition instead of star
  -:  ----------- >  7:  8f85da3bb4a doc: uniformize <URL> placeholders' case
  -:  ----------- >  8:  20900b019f8 doc: git-http-push: describe the refs as pattern pairs
  -:  ----------- >  9:  7eef3538f3c doc: git-init: clarify file modes in octal.
Signature · 1 line
gitgitgadget
#8 lore raw

PATCH v2 1/9 doc: fix git credential synopsis

From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <[email protected]>

The subcommand of git credential is not optional.

---
 Documentation/git-credential.txt | 2 +-
 builtin/credential.c             | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
Documentation/git-credential.txt +1 -1
index 206e3c5f407..f18673017f5 100644
@@ -8,7 +8,7 @@ git-credential - Retrieve and store user credentials
 SYNOPSIS
 --------
 ------------------
-git credential <fill|approve|reject>
+'git credential' (fill|approve|reject)
 ------------------
 
 DESCRIPTION
builtin/credential.c +1 -1
index d75dcdc64aa..d7b304fa084 100644
@@ -4,7 +4,7 @@
 #include "config.h"
 
 static const char usage_msg[] =
-	"git credential [fill|approve|reject]";
+	"git credential (fill|approve|reject)";
 
 int cmd_credential(int argc, const char **argv, const char *prefix)
 {
Signature · 1 line
gitgitgadget
#9 lore raw

PATCH v2 2/9 doc: split placeholders as individual tokens

In reply to Jean-Noël Avila via GitGitGadget

From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <[email protected]>

The placeholders represent atoms of tokens and must not be aggregates.

---
 Documentation/git-archimport.txt  | 14 +++++++-------
 Documentation/git-p4.txt          |  2 +-
 Documentation/git-web--browse.txt |  2 +-
 3 files changed, 9 insertions(+), 9 deletions(-)
Documentation/git-archimport.txt +7 -7
index a595a0ffeee..847777fd172 100644
@@ -9,14 +9,14 @@ git-archimport - Import a GNU Arch repository into Git
 SYNOPSIS
 --------
 [verse]
-'git archimport' [-h] [-v] [-o] [-a] [-f] [-T] [-D depth] [-t tempdir]
-               <archive/branch>[:<git-branch>] ...
+'git archimport' [-h] [-v] [-o] [-a] [-f] [-T] [-D <depth>] [-t <tempdir>]
+	       <archive>/<branch>[:<git-branch>]...
 
 DESCRIPTION
 -----------
 Imports a project from one or more GNU Arch repositories.
 It will follow branches
-and repositories within the namespaces defined by the <archive/branch>
+and repositories within the namespaces defined by the <archive>/<branch>
 parameters supplied. If it cannot find the remote branch a merge comes from
 it will just import it as a regular commit. If it can find it, it will mark it
 as a merge whenever possible (see discussion below).
@@ -27,7 +27,7 @@ import new branches within the provided roots.
 
 It expects to be dealing with one project only. If it sees
 branches that have different roots, it will refuse to run. In that case,
-edit your <archive/branch> parameters to define clearly the scope of the
+edit your <archive>/<branch> parameters to define clearly the scope of the
 import.
 
 'git archimport' uses `tla` extensively in the background to access the
@@ -42,7 +42,7 @@ incremental imports.
 
 While 'git archimport' will try to create sensible branch names for the
 archives that it imports, it is also possible to specify Git branch names
-manually.  To do so, write a Git branch name after each <archive/branch>
+manually.  To do so, write a Git branch name after each <archive>/<branch>
 parameter, separated by a colon.  This way, you can shorten the Arch
 branch names and convert Arch jargon to Git jargon, for example mapping a
 "PROJECT{litdd}devo{litdd}VERSION" branch to "master".
@@ -104,8 +104,8 @@ OPTIONS
 	Override the default tempdir.
 
 
-<archive/branch>::
-	Archive/branch identifier in a format that `tla log` understands.
+<archive>/<branch>::
+	<archive>/<branch> identifier in a format that `tla log` understands.
 
 
 GIT
Documentation/git-p4.txt +1 -1
index 38e5257b2a4..8a6addcf72f 100644
@@ -361,7 +361,7 @@ These options can be used to modify 'git p4 submit' behavior.
 	p4/master.  See the "Sync options" section above for more
 	information.
 
---commit <sha1>|<sha1..sha1>::
+--commit (<sha1>|<sha1>..<sha1>)::
     Submit only the specified commit or range of commits, instead of the full
     list of changes that are in the current Git branch.
 
Documentation/git-web--browse.txt +1 -1
index 8d162b56c59..f2f996cbe16 100644
@@ -8,7 +8,7 @@ git-web--browse - Git helper script to launch a web browser
 SYNOPSIS
 --------
 [verse]
-'git web{litdd}browse' [<options>] <url|file>...
+'git web{litdd}browse' [<options>] (<URL>|<file>)...
 
 DESCRIPTION
 -----------
Signature · 1 line
gitgitgadget
#10 lore raw

Re: [PATCH v2 2/9] doc: split placeholders as individual tokens

Documentation/git-archimport.txt OPTIONS · line 108

Quoted 9 lines · Jean-Noël Avila via GitGitGadget

archives that it imports, it is also possible to specify Git branch names

Documentation/git-archimport.txt +3 -3
-manually.  To do so, write a Git branch name after each <archive/branch>
+manually.  To do so, write a Git branch name after each <archive>/<branch>
 parameter, separated by a colon.  This way, you can shorten the Arch
 
-<archive/branch>::
-       Archive/branch identifier in a format that `tla log` understands.
+<archive>/<branch>::
+       <archive>/<branch> identifier in a format that `tla log` understands.

This patch looks good to me. Maybe these "<archive>/<branch>" should go in SQs, but that should be outside the scope of this patch (and this series is big enough anyway). This last instance here adds a new instance of this pattern, but it's an existing pattern and you're following the local convention.

Martin

#11 lore raw

PATCH v2 3/9 doc: express grammar placeholders between angle brackets

In reply to Jean-Noël Avila via GitGitGadget

From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <[email protected]>

This rules discerns user inputs from verbatim options in the synopsis.

---
 Documentation/git-cherry-pick.txt     |  6 ++--
 Documentation/git-config.txt          | 46 +++++++++++++--------------
 Documentation/git-cvsexportcommit.txt |  4 +--
 Documentation/git-gui.txt             |  2 +-
 Documentation/git-help.txt            |  6 ++--
 Documentation/git-http-fetch.txt      |  2 +-
 Documentation/git-init.txt            |  2 +-
 Documentation/git-pack-objects.txt    |  4 +--
 Documentation/git-pack-redundant.txt  |  2 +-
 Documentation/git-reflog.txt          |  4 +--
 Documentation/git-sparse-checkout.txt |  2 +-
 Documentation/git-stage.txt           |  2 +-
 12 files changed, 41 insertions(+), 41 deletions(-)
Documentation/git-cherry-pick.txt +3 -3
index 5d750314b29..78dcc9171fb 100644
@@ -8,7 +8,7 @@ git-cherry-pick - Apply the changes introduced by some existing commits
 SYNOPSIS
 --------
 [verse]
-'git cherry-pick' [--edit] [-n] [-m parent-number] [-s] [-x] [--ff]
+'git cherry-pick' [--edit] [-n] [-m <parent-number>] [-s] [-x] [--ff]
 		  [-S[<keyid>]] <commit>...
 'git cherry-pick' (--continue | --skip | --abort | --quit)
 
@@ -81,8 +81,8 @@ OPTIONS
 	described above, and `-r` was to disable it.  Now the
 	default is not to do `-x` so this option is a no-op.
 
--m parent-number::
---mainline parent-number::
+-m <parent-number>::
+--mainline <parent-number>::
 	Usually you cannot cherry-pick a merge because you do not know which
 	side of the merge should be considered the mainline.  This
 	option specifies the parent number (starting from 1) of
Documentation/git-config.txt +23 -23

91 lines not on this page · raw message

Documentation/git-cvsexportcommit.txt +2 -2
index 00154b6c85a..41c8a8a05c1 100644
@@ -9,8 +9,8 @@ git-cvsexportcommit - Export a single commit to a CVS checkout
 SYNOPSIS
 --------
 [verse]
-'git cvsexportcommit' [-h] [-u] [-v] [-c] [-P] [-p] [-a] [-d cvsroot]
-	[-w cvsworkdir] [-W] [-f] [-m msgprefix] [PARENTCOMMIT] COMMITID
+'git cvsexportcommit' [-h] [-u] [-v] [-c] [-P] [-p] [-a] [-d <cvsroot>]
+	[-w <cvs-workdir>] [-W] [-f] [-m <msgprefix>] [<parent-commit>] <commit-id>
 
 
 DESCRIPTION
Documentation/git-gui.txt +1 -1
index c9d7e96214f..e8f3ccb4337 100644
@@ -8,7 +8,7 @@ git-gui - A portable graphical interface to Git
 SYNOPSIS
 --------
 [verse]
-'git gui' [<command>] [arguments]
+'git gui' [<command>] [<arguments>]
 
 DESCRIPTION
 -----------
Documentation/git-help.txt +3 -3
index 96d5f598b4b..44ea63cc6d3 100644
@@ -9,14 +9,14 @@ SYNOPSIS
 --------
 [verse]
 'git help' [-a|--all [--[no-]verbose]]
-	   [[-i|--info] [-m|--man] [-w|--web]] [COMMAND|GUIDE]
+	   [[-i|--info] [-m|--man] [-w|--web]] [<command>|<guide>]
 'git help' [-g|--guides]
 'git help' [-c|--config]
 
 DESCRIPTION
 -----------
 
-With no options and no COMMAND or GUIDE given, the synopsis of the 'git'
+With no options and no '<command>' or '<guide>' given, the synopsis of the 'git'
 command and a list of the most commonly used Git commands are printed
 on the standard output.
 
@@ -33,7 +33,7 @@ variables.
 
 If an alias is given, git shows the definition of the alias on
 standard output. To get the manual page for the aliased command, use
-`git COMMAND --help`.
+`git <command> --help`.
 
 Note that `git --help ...` is identical to `git help ...` because the
 former is internally converted into the latter.
Documentation/git-http-fetch.txt +1 -1
index 9fa17b60e43..fa4bb6cbc3e 100644
@@ -9,7 +9,7 @@ git-http-fetch - Download from a remote Git repository via HTTP
 SYNOPSIS
 --------
 [verse]
-'git http-fetch' [-c] [-t] [-a] [-d] [-v] [-w filename] [--recover] [--stdin | --packfile=<hash> | <commit>] <url>
+'git http-fetch' [-c] [-t] [-a] [-d] [-v] [-w <filename>] [--recover] [--stdin | --packfile=<hash> | <commit>] <url>
 
 DESCRIPTION
 -----------
Documentation/git-init.txt +1 -1
index b611d80697d..7781d0b3545 100644
@@ -12,7 +12,7 @@ SYNOPSIS
 'git init' [-q | --quiet] [--bare] [--template=<template_directory>]
 	  [--separate-git-dir <git dir>] [--object-format=<format>]
 	  [-b <branch-name> | --initial-branch=<branch-name>]
-	  [--shared[=<permissions>]] [directory]
+	  [--shared[=<permissions>]] [<directory>]
 
 
 DESCRIPTION
Documentation/git-pack-objects.txt +2 -2
index dbfd1f90175..f8344e1e5ba 100644
@@ -13,8 +13,8 @@ SYNOPSIS
 	[--no-reuse-delta] [--delta-base-offset] [--non-empty]
 	[--local] [--incremental] [--window=<n>] [--depth=<n>]
 	[--revs [--unpacked | --all]] [--keep-pack=<pack-name>]
-	[--stdout [--filter=<filter-spec>] | base-name]
-	[--shallow] [--keep-true-parents] [--[no-]sparse] < object-list
+	[--stdout [--filter=<filter-spec>] | <base-name>]
+	[--shallow] [--keep-true-parents] [--[no-]sparse] < <object-list>
 
 
 DESCRIPTION
Documentation/git-pack-redundant.txt +1 -1
index f2869da5728..ee7034b5e52 100644
@@ -9,7 +9,7 @@ git-pack-redundant - Find redundant pack files
 SYNOPSIS
 --------
 [verse]
-'git pack-redundant' [ --verbose ] [ --alt-odb ] < --all | .pack filename ... >
+'git pack-redundant' [ --verbose ] [ --alt-odb ] ( --all | <pack-filename>... )
 
 DESCRIPTION
 -----------
Documentation/git-reflog.txt +2 -2
index ff487ff77d3..5ced7ad4f8b 100644
@@ -17,12 +17,12 @@ The command takes various subcommands, and different options
 depending on the subcommand:
 
 [verse]
-'git reflog' ['show'] [log-options] [<ref>]
+'git reflog' ['show'] [<log-options>] [<ref>]
 'git reflog expire' [--expire=<time>] [--expire-unreachable=<time>]
 	[--rewrite] [--updateref] [--stale-fix]
 	[--dry-run | -n] [--verbose] [--all [--single-worktree] | <refs>...]
 'git reflog delete' [--rewrite] [--updateref]
-	[--dry-run | -n] [--verbose] ref@\{specifier\}...
+	[--dry-run | -n] [--verbose] <ref>@\{<specifier>\}...
 'git reflog exists' <ref>
 
 Reference logs, or "reflogs", record when the tips of branches and
Documentation/git-sparse-checkout.txt +1 -1
index 42056ee9ff9..9a78dd721e8 100644
@@ -11,7 +11,7 @@ given by a list of patterns.
 SYNOPSIS
 --------
 [verse]
-'git sparse-checkout <subcommand> [options]'
+'git sparse-checkout <subcommand> [<options>]'
 
 
 DESCRIPTION
Documentation/git-stage.txt +1 -1
index 25bcda936db..2f6aaa75b9a 100644
@@ -9,7 +9,7 @@ git-stage - Add file contents to the staging area
 SYNOPSIS
 --------
 [verse]
-'git stage' args...
+'git stage' <arg>...
 
 
 DESCRIPTION
Signature · 1 line
gitgitgadget
#12 lore raw

Re: [PATCH v2 3/9] doc: express grammar placeholders between angle brackets

Quoted 4 lines · Jean-Noël Avila via GitGitGadget

doc: express grammar placeholders between angle brackets

This rules discerns user inputs from verbatim options in the synopsis.

Maybe: s/rules//

Documentation/git-config.txt See also <<FILES>>. · line 146

Quoted 7 lines

---

Documentation/git-config.txt +1 -1
@@ -145,7 +145,7 @@ See also <<FILES>>.
--f config-file::
+-f <config-file>::
 --file config-file::

You need to fix the --file item as well (mentioned in my v1 review):

    --file <config-file>::

Documentation/git-config.txt Valid `<type>`'s include: · line 283

Quoted 5 lines
Documentation/git-config.txt +1 -1
@@ -281,7 +281,7 @@ Valid `<type>`'s include:
 --default <value>::
   When using `--get`, and the requested variable is not found, behave as if
-  <value> were the value assigned to the that variable.
+  `<value>` were the value assigned to the that variable.

This change seems out of place in this patch which claims only to be adding angle brackets.

#13 lore raw

Re: [PATCH v2 3/9] doc: express grammar placeholders between angle brackets

Quoted 19 lines · Eric Sunshine
Quoted 4 lines · Jean-Noël Avila via GitGitGadget

doc: express grammar placeholders between angle brackets

This rules discerns user inputs from verbatim options in the synopsis.

Maybe: s/rules//

Documentation/git-config.txt See also <<FILES>>. · line 146

Quoted 7 lines

---

Documentation/git-config.txt +1 -1
@@ -145,7 +145,7 @@ See also <<FILES>>.
--f config-file::
+-f <config-file>::
 --file config-file::

You need to fix the --file item as well (mentioned in my v1 review):

Quoted 1 line
    --file <config-file>::

Will amend locally.
Thanks.

#14 lore raw

PATCH v2 4/9 doc: use only hyphens as word separators in placeholders

In reply to Jean-Noël Avila via GitGitGadget

From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <[email protected]>

According to CodingGuidelines, spaces and underscores are not allowed in placeholders.

---
 Documentation/date-formats.txt   |  4 +--
 Documentation/git-checkout.txt   | 36 +++++++++++-----------
 Documentation/git-clone.txt      |  8 ++---
 Documentation/git-cvsimport.txt  |  8 ++---
 Documentation/git-diff-files.txt |  2 +-
 Documentation/git-diff-index.txt |  2 +-
 Documentation/git-diff-tree.txt  |  2 +-
 Documentation/git-init-db.txt    |  2 +-
 Documentation/git-init.txt       |  8 ++---
 Documentation/git-log.txt        |  8 ++---
 Documentation/git-p4.txt         |  6 ++--
 Documentation/git-shortlog.txt   |  8 ++---
 Documentation/git-svn.txt        |  2 +-
 Documentation/pretty-formats.txt | 52 ++++++++++++++++----------------
 14 files changed, 74 insertions(+), 74 deletions(-)
Documentation/date-formats.txt +2 -2
index 99c455f51c0..4a1e7bd43bf 100644
@@ -5,9 +5,9 @@ The `GIT_AUTHOR_DATE` and `GIT_COMMITTER_DATE` environment variables
 support the following date formats:
 
 Git internal format::
-	It is `<unix timestamp> <time zone offset>`, where `<unix
+	It is `<unix-timestamp> <time-zone-offset>`, where `<unix-
 	timestamp>` is the number of seconds since the UNIX epoch.
-	`<time zone offset>` is a positive or negative offset from UTC.
+	`<time-zone-offset>` is a positive or negative offset from UTC.
 	For example CET (which is 1 hour ahead of UTC) is `+0100`.
 
 RFC 2822::
Documentation/git-checkout.txt +18 -18
index d473c9bf387..a52dc49a3dc 100644
@@ -11,7 +11,7 @@ SYNOPSIS
 'git checkout' [-q] [-f] [-m] [<branch>]
 'git checkout' [-q] [-f] [-m] --detach [<branch>]
 'git checkout' [-q] [-f] [-m] [--detach] <commit>
-'git checkout' [-q] [-f] [-m] [[-b|-B|--orphan] <new_branch>] [<start_point>]
+'git checkout' [-q] [-f] [-m] [[-b|-B|--orphan] <new-branch>] [<start-point>]
 'git checkout' [-f|--ours|--theirs|-m|--conflict=<style>] [<tree-ish>] [--] <pathspec>...
 'git checkout' [-f|--ours|--theirs|-m|--conflict=<style>] [<tree-ish>] --pathspec-from-file=<file> [--pathspec-file-nul]
 'git checkout' (-p|--patch) [<tree-ish>] [--] [<pathspec>...]
@@ -43,7 +43,7 @@ You could omit `<branch>`, in which case the command degenerates to
 rather expensive side-effects to show only the tracking information,
 if exists, for the current branch.
 
-'git checkout' -b|-B <new_branch> [<start point>]::
+'git checkout' -b|-B <new-branch> [<start-point>]::
 
 	Specifying `-b` causes a new branch to be created as if
 	linkgit:git-branch[1] were called and then checked out.  In
@@ -52,11 +52,11 @@ if exists, for the current branch.
 	`--track` without `-b` implies branch creation; see the
 	description of `--track` below.
 +
-If `-B` is given, `<new_branch>` is created if it doesn't exist; otherwise, it
+If `-B` is given, `<new-branch>` is created if it doesn't exist; otherwise, it
 is reset. This is the transactional equivalent of
 +
 ------------
-$ git branch -f <branch> [<start point>]
+$ git branch -f <branch> [<start-point>]
 $ git checkout <branch>
 ------------
 +
@@ -145,13 +145,13 @@ as `ours` (i.e. "our shared canonical history"), while what you did
 on your side branch as `theirs` (i.e. "one contributor's work on top
 of it").
 
--b <new_branch>::
-	Create a new branch named `<new_branch>` and start it at
-	`<start_point>`; see linkgit:git-branch[1] for details.
+-b <new-branch>::
+	Create a new branch named `<new-branch>` and start it at
+	`<start-point>`; see linkgit:git-branch[1] for details.
 
--B <new_branch>::
-	Creates the branch `<new_branch>` and start it at `<start_point>`;
-	if it already exists, then reset it to `<start_point>`. This is
+-B <new-branch>::
+	Creates the branch `<new-branch>` and start it at `<start-point>`;
+	if it already exists, then reset it to `<start-point>`. This is
 	equivalent to running "git branch" with "-f"; see
 	linkgit:git-branch[1] for details.
 
@@ -210,16 +210,16 @@ variable.
 	`<commit>` is not a branch name.  See the "DETACHED HEAD" section
 	below for details.
 
---orphan <new_branch>::
-	Create a new 'orphan' branch, named `<new_branch>`, started from
-	`<start_point>` and switch to it.  The first commit made on this
+--orphan <new-branch>::
+	Create a new 'orphan' branch, named `<new-branch>`, started from
+	`<start-point>` and switch to it.  The first commit made on this
 	new branch will have no parents and it will be the root of a new
 	history totally disconnected from all the other branches and
 	commits.
 +
 The index and the working tree are adjusted as if you had previously run
-`git checkout <start_point>`.  This allows you to start a new history
-that records a set of paths similar to `<start_point>` by easily running
+`git checkout <start-point>`.  This allows you to start a new history
+that records a set of paths similar to `<start-point>` by easily running
 `git commit -a` to make the root commit.
 +
 This can be useful when you want to publish the tree from a commit
@@ -229,7 +229,7 @@ whose full history contains proprietary or otherwise encumbered bits of
 code.
 +
 If you want to start a disconnected history that records a set of paths
-that is totally different from the one of `<start_point>`, then you should
+that is totally different from the one of `<start-point>`, then you should
 clear the index and the working tree right after creating the orphan
 branch by running `git rm -rf .` from the top level of the working tree.
 Afterwards you will be ready to prepare your new files, repopulating the
@@ -341,10 +341,10 @@ As a special case, you may use `A...B` as a shortcut for the
 merge base of `A` and `B` if there is exactly one merge base. You can
 leave out at most one of `A` and `B`, in which case it defaults to `HEAD`.
 
-<new_branch>::
+<new-branch>::
 	Name for the new branch.
 
-<start_point>::
+<start-point>::
 	The name of a commit at which to start the new branch; see
 	linkgit:git-branch[1] for details. Defaults to `HEAD`.
 +
Documentation/git-clone.txt +4 -4
index 3fe3810f1ce..9685ea06915 100644
@@ -9,10 +9,10 @@ git-clone - Clone a repository into a new directory
 SYNOPSIS
 --------
 [verse]
-'git clone' [--template=<template_directory>]
+'git clone' [--template=<template-directory>]
 	  [-l] [-s] [--no-hardlinks] [-q] [-n] [--bare] [--mirror]
 	  [-o <name>] [-b <name>] [-u <upload-pack>] [--reference <repository>]
-	  [--dissociate] [--separate-git-dir <git dir>]
+	  [--dissociate] [--separate-git-dir <git-dir>]
 	  [--depth <depth>] [--[no-]single-branch] [--no-tags]
 	  [--recurse-submodules[=<pathspec>]] [--[no-]shallow-submodules]
 	  [--[no-]remote-submodules] [--jobs <n>] [--sparse] [--[no-]reject-shallow]
@@ -211,7 +211,7 @@ objects from the source repository into a pack in the cloned repository.
 	via ssh, this specifies a non-default path for the command
 	run on the other end.
 
---template=<template_directory>::
+--template=<template-directory>::
 	Specify the directory from which templates will be used;
 	(See the "TEMPLATE DIRECTORY" section of linkgit:git-init[1].)
 
@@ -294,7 +294,7 @@ or `--mirror` is given)
 	superproject's recorded SHA-1. Equivalent to passing `--remote` to
 	`git submodule update`.
 
---separate-git-dir=<git dir>::
+--separate-git-dir=<git-dir>::
 	Instead of placing the cloned repository where it is supposed
 	to be, place the cloned repository at the specified directory,
 	then make a filesystem-agnostic Git symbolic link to there.
Documentation/git-cvsimport.txt +4 -4
index de1ebed67d7..b3f27671a0c 100644
@@ -11,9 +11,9 @@ SYNOPSIS
 [verse]
 'git cvsimport' [-o <branch-for-HEAD>] [-h] [-v] [-d <CVSROOT>]
 	      [-A <author-conv-file>] [-p <options-for-cvsps>] [-P <file>]
-	      [-C <git_repository>] [-z <fuzz>] [-i] [-k] [-u] [-s <subst>]
-	      [-a] [-m] [-M <regex>] [-S <regex>] [-L <commitlimit>]
-	      [-r <remote>] [-R] [<CVS_module>]
+	      [-C <git-repository>] [-z <fuzz>] [-i] [-k] [-u] [-s <subst>]
+	      [-a] [-m] [-M <regex>] [-S <regex>] [-L <commit-limit>]
+	      [-r <remote>] [-R] [<CVS-module>]
 
 
 DESCRIPTION
@@ -59,7 +59,7 @@ OPTIONS
 	from `CVS/Root`. If no such file exists, it checks for the
 	`CVSROOT` environment variable.
 
-<CVS_module>::
+<CVS-module>::
 	The CVS module you want to import. Relative to <CVSROOT>.
 	If not given, 'git cvsimport' tries to read it from
 	`CVS/Repository`.
Documentation/git-diff-files.txt +1 -1
index 906774f0f7e..bf1febb9ae7 100644
@@ -9,7 +9,7 @@ git-diff-files - Compares files in the working tree and the index
 SYNOPSIS
 --------
 [verse]
-'git diff-files' [-q] [-0|-1|-2|-3|-c|--cc] [<common diff options>] [<path>...]
+'git diff-files' [-q] [-0|-1|-2|-3|-c|--cc] [<common-diff-options>] [<path>...]
 
 DESCRIPTION
 -----------
Documentation/git-diff-index.txt +1 -1
index 27acb31cbf2..679cae27d9b 100644
@@ -9,7 +9,7 @@ git-diff-index - Compare a tree to the working tree or index
 SYNOPSIS
 --------
 [verse]
-'git diff-index' [-m] [--cached] [--merge-base] [<common diff options>] <tree-ish> [<path>...]
+'git diff-index' [-m] [--cached] [--merge-base] [<common-diff-options>] <tree-ish> [<path>...]
 
 DESCRIPTION
 -----------
Documentation/git-diff-tree.txt +1 -1
index 2fc24c542f8..274d5eaba93 100644
@@ -11,7 +11,7 @@ SYNOPSIS
 [verse]
 'git diff-tree' [--stdin] [-m] [-s] [-v] [--no-commit-id] [--pretty]
 	      [-t] [-r] [-c | --cc] [--combined-all-paths] [--root] [--merge-base]
-	      [<common diff options>] <tree-ish> [<tree-ish>] [<path>...]
+	      [<common-diff-options>] <tree-ish> [<tree-ish>] [<path>...]
 
 DESCRIPTION
 -----------
Documentation/git-init-db.txt +1 -1
index 648a6cd78ad..18bf1a3c8ce 100644
@@ -9,7 +9,7 @@ git-init-db - Creates an empty Git repository
 SYNOPSIS
 --------
 [verse]
-'git init-db' [-q | --quiet] [--bare] [--template=<template_directory>] [--separate-git-dir <git dir>] [--shared[=<permissions>]]
+'git init-db' [-q | --quiet] [--bare] [--template=<template-directory>] [--separate-git-dir <git-dir>] [--shared[=<permissions>]]
 
 
 DESCRIPTION
Documentation/git-init.txt +4 -4
index 7781d0b3545..fdb7b3f367d 100644
@@ -9,8 +9,8 @@ git-init - Create an empty Git repository or reinitialize an existing one
 SYNOPSIS
 --------
 [verse]
-'git init' [-q | --quiet] [--bare] [--template=<template_directory>]
-	  [--separate-git-dir <git dir>] [--object-format=<format>]
+'git init' [-q | --quiet] [--bare] [--template=<template-directory>]
+	  [--separate-git-dir <git-dir>] [--object-format=<format>]
 	  [-b <branch-name> | --initial-branch=<branch-name>]
 	  [--shared[=<permissions>]] [<directory>]
 
@@ -57,12 +57,12 @@ values are 'sha1' and (if enabled) 'sha256'.  'sha1' is the default.
 +
 include::object-format-disclaimer.txt[]
 
---template=<template_directory>::
+--template=<template-directory>::
 
 Specify the directory from which templates will be used.  (See the "TEMPLATE
 DIRECTORY" section below.)
 
---separate-git-dir=<git dir>::
+--separate-git-dir=<git-dir>::
 
 Instead of initializing the repository as a directory to either `$GIT_DIR` or
 `./.git/`, create a text file there containing the path to the actual
Documentation/git-log.txt +4 -4
index 0498e7bacbe..20e87cecf49 100644
@@ -9,7 +9,7 @@ git-log - Show commit logs
 SYNOPSIS
 --------
 [verse]
-'git log' [<options>] [<revision range>] [[--] <path>...]
+'git log' [<options>] [<revision-range>] [[--] <path>...]
 
 DESCRIPTION
 -----------
@@ -81,13 +81,13 @@ produced by `--stat`, etc.
 
 include::line-range-options.txt[]
 
-<revision range>::
+<revision-range>::
 	Show only commits in the specified revision range.  When no
-	<revision range> is specified, it defaults to `HEAD` (i.e. the
+	<revision-range> is specified, it defaults to `HEAD` (i.e. the
 	whole history leading to the current commit).  `origin..HEAD`
 	specifies all the commits reachable from the current commit
 	(i.e. `HEAD`), but not from `origin`. For a complete list of
-	ways to spell <revision range>, see the 'Specifying Ranges'
+	ways to spell <revision-range>, see the 'Specifying Ranges'
 	section of linkgit:gitrevisions[7].
 
 [--] <path>...::
Documentation/git-p4.txt +3 -3
index 8a6addcf72f..e21fcd8f712 100644
@@ -9,10 +9,10 @@ git-p4 - Import from and submit to Perforce repositories
 SYNOPSIS
 --------
 [verse]
-'git p4 clone' [<sync options>] [<clone options>] <p4 depot path>...
-'git p4 sync' [<sync options>] [<p4 depot path>...]
+'git p4 clone' [<sync-options>] [<clone-options>] <p4-depot-path>...
+'git p4 sync' [<sync-options>] [<p4-depot-path>...]
 'git p4 rebase'
-'git p4 submit' [<submit options>] [<master branch name>]
+'git p4 submit' [<submit-options>] [<master-branch-name>]
 
 
 DESCRIPTION
Documentation/git-shortlog.txt +4 -4
index c9c7f3065ca..f64e77047b2 100644
@@ -8,7 +8,7 @@ git-shortlog - Summarize 'git log' output
 SYNOPSIS
 --------
 [verse]
-'git shortlog' [<options>] [<revision range>] [[--] <path>...]
+'git shortlog' [<options>] [<revision-range>] [[--] <path>...]
 git log --pretty=short | 'git shortlog' [<options>]
 
 DESCRIPTION
@@ -89,13 +89,13 @@ counts both authors and co-authors.
 If width is `0` (zero) then indent the lines of the output without wrapping
 them.
 
-<revision range>::
+<revision-range>::
 	Show only commits in the specified revision range.  When no
-	<revision range> is specified, it defaults to `HEAD` (i.e. the
+	<revision-range> is specified, it defaults to `HEAD` (i.e. the
 	whole history leading to the current commit).  `origin..HEAD`
 	specifies all the commits reachable from the current commit
 	(i.e. `HEAD`), but not from `origin`. For a complete list of
-	ways to spell <revision range>, see the "Specifying Ranges"
+	ways to spell <revision-range>, see the "Specifying Ranges"
 	section of linkgit:gitrevisions[7].
 
 [--] <path>...::
Documentation/git-svn.txt +1 -1
index 222b556d7a9..4e92308e85d 100644
@@ -575,7 +575,7 @@ OPTIONS
 -------
 
 --shared[=(false|true|umask|group|all|world|everybody)]::
---template=<template_directory>::
+--template=<template-directory>::
 	Only used with the 'init' command.
 	These are passed directly to 'git init'.
 
Documentation/pretty-formats.txt +26 -26

130 lines not on this page · raw message

Signature · 1 line
gitgitgadget
#15 lore raw

Re: [PATCH v2 4/9] doc: use only hyphens as word separators in placeholders

Documentation/date-formats.txt The `GIT_AUTHOR_DATE` and `GIT_COMMITTER_DATE` environment variables · line 9

Quoted 4 lines · Jean-Noël Avila via GitGitGadget
Documentation/date-formats.txt +1 -1
-       It is `<unix timestamp> <time zone offset>`, where `<unix
+       It is `<unix-timestamp> <time-zone-offset>`, where `<unix-
        timestamp>` is the number of seconds since the UNIX epoch.

This still effectively has a space -- it renders as "<unix- timestamp>". You'll probably need to rewrap the lines a little to get rid of that.

Documentation/pretty-formats.txt option is given with no value, it's enabled. · line 293

Quoted 4 lines
Documentation/pretty-formats.txt +1 -1
-** 'separator=<SEP>': specify a separator inserted between trailer
+** 'separator=<sep>': specify a separator inserted between trailer
    lines. When this option is not given each trailer line is
    terminated with a line feed character. The string SEP may contain

s/SEP/<sep>/ ?

Thanks for taking on this large task.

Martin

#16 lore raw

Re: [PATCH v2 4/9] doc: use only hyphens as word separators in placeholders

Quoted 9 lines · Martin Ågren

Documentation/date-formats.txt The `GIT_AUTHOR_DATE` and `GIT_COMMITTER_DATE` environment variables · line 9

Quoted 4 lines · Jean-Noël Avila via GitGitGadget
Documentation/date-formats.txt +1 -1
-       It is `<unix timestamp> <time zone offset>`, where `<unix
+       It is `<unix-timestamp> <time-zone-offset>`, where `<unix-
        timestamp>` is the number of seconds since the UNIX epoch.

This still effectively has a space -- it renders as "<unix- timestamp>". You'll probably need to rewrap the lines a little to get rid of that.

Thanks for sharp eyes. grep -e '<[^ ]*-$' Documentation/ spots only this instance, so I'll fix it locally.

Quoted 6 lines

Documentation/pretty-formats.txt option is given with no value, it's enabled. · line 293

Quoted 4 lines
Documentation/pretty-formats.txt +1 -1
-** 'separator=<SEP>': specify a separator inserted between trailer
+** 'separator=<sep>': specify a separator inserted between trailer
    lines. When this option is not given each trailer line is
    terminated with a line feed character. The string SEP may contain

s/SEP/<sep>/ ?

Also, this one.

#17 lore raw

Re: [PATCH v2 4/9] doc: use only hyphens as word separators in placeholders

In reply to Jean-Noël Avila via GitGitGadget
Quoted 4 lines · Jean-Noël Avila via GitGitGadget

From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <[email protected]>

According to CodingGuidelines, spaces and underscores are not allowed in placeholders.

I have a patch under review that touches the same files you are modifying here. As I've been pointed to these changes, I'd like to make a quick observation.

Quoted 13 lines
Documentation/pretty-formats.txt +2 -2
@@ -101,9 +101,9 @@ commits are displayed, but not the way the diff is shown e.g. with
 `git log --raw`. To get full object names in a raw diff format,
 use `--no-abbrev`.
 
-* 'format:<string>'
+* 'format:<format-string>'
 +
-The 'format:<string>' format allows you to specify which information
+The 'format:<format-string>' format allows you to specify which information
 you want to show. It works a little bit like printf format,
 with the notable exception that you get a newline with '%n'
 instead of '\n'.

Documentation/pretty-formats.txt endif::git-rev-list[] · line 276

Quoted 5 lines
Documentation/pretty-formats.txt +1 -1
@@ -273,12 +273,12 @@ endif::git-rev-list[]
 			  If any option is provided multiple times the
 			  last occurrence wins.
 +
-The boolean options accept an optional value `[=<BOOL>]`. The values
+The boolean options accept an optional value `[=<value>]`. The values

Here you change "BOOL" to "value", below you change it to "bool-value".

Quoted 32 lines
Documentation/pretty-formats.txt +4 -7
 `true`, `false`, `on`, `off` etc. are all accepted. See the "boolean"
 sub-section in "EXAMPLES" in linkgit:git-config[1]. If a boolean
 option is given with no value, it's enabled.
 +
-** 'key=<K>': only show trailers with specified key. Matching is done
+** 'key=<key>': only show trailers with specified <key>. Matching is done
    case-insensitively and trailing colon is optional. If option is
    given multiple times trailer lines matching any of the keys are
    shown. This option automatically enables the `only` option so that
@@ -286,9 +286,9 @@ option is given with no value, it's enabled.
    desired it can be disabled with `only=false`.  E.g.,
    `%(trailers:key=Reviewed-by)` shows trailer lines with key
    `Reviewed-by`.
-** 'only[=<BOOL>]': select whether non-trailer lines from the trailer
+** 'only[=<bool-value>]': select whether non-trailer lines from the trailer
    block should be included.
-** 'separator=<SEP>': specify a separator inserted between trailer
+** 'separator=<sep>': specify a separator inserted between trailer
    lines. When this option is not given each trailer line is
    terminated with a line feed character. The string SEP may contain
    the literal formatting codes described above. To use comma as
@@ -296,15 +296,15 @@ option is given with no value, it's enabled.
    next option. E.g., `%(trailers:key=Ticket,separator=%x2C )`
    shows all trailer lines whose key is "Ticket" separated by a comma
    and a space.
-** 'unfold[=<BOOL>]': make it behave as if interpret-trailer's `--unfold`
+** 'unfold[=<bool-value>]': make it behave as if interpret-trailer's `--unfold`
    option was given. E.g.,
    `%(trailers:only,unfold=true)` unfolds and shows all trailer lines.
-** 'keyonly[=<BOOL>]': only show the key part of the trailer.
-** 'valueonly[=<BOOL>]': only show the value part of the trailer.
-** 'key_value_separator=<SEP>': specify a separator inserted between

Documentation/pretty-formats.txt option is given with no value, it's enabled. · line 310

Quoted 10 lines
Documentation/pretty-formats.txt +4 -1
+** 'keyonly[=<bool-value>]': only show the key part of the trailer.
+** 'valueonly[=<bool-value>]': only show the value part of the trailer.
+** 'key_value_separator=<sep>': specify a separator inserted between
    trailer lines. When this option is not given each trailer key-value
    pair is separated by ": ". Otherwise it shares the same semantics
-   as 'separator=<SEP>' above.
+   as 'separator=<sep>' above.
 
 NOTE: Some placeholders may depend on other options given to the
 revision traversal engine. For example, the `%g*` reflog options will

These changes over here are contrary to the statement in the commit message. In addition to switching to hyphens, they:

- switch casing (okay, makes sense, you point this out in the cover letter but maybe it's worth mentioning it in the commit message too? idk)

- change the terms used -- and this I don't understand. I'm not really bothered by switching <n> to <number> or <k> to <key>, as these changes seem reasonable (though again, they are not mentioned in the commit message). However, "bool-value" seems odd. Why that and not "number-value"? IMHO the "value" is redundant here, let it be "bool" and "number".

Similarly "the 'format:<format-string>' format" feels highly redundant, I expect the reader knows that <string> contains a format inside it as it's mentioned immediately before *and* after.

Signature · 2 lines
Eli Schwartz
Arch Linux Bug Wrangler and Trusted User
#18 lore raw

Re: [PATCH v2 4/9] doc: use only hyphens as word separators in placeholders

Quoted 7 lines · Le dimanche 31 octobre 2021, 19:58:56 CET Eli Schwartz a écrit :
Quoted 4 lines · Jean-Noël Avila via GitGitGadget

From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <[email protected]>

According to CodingGuidelines, spaces and underscores are not allowed in placeholders.

Quoted 6 lines

I have a patch under review that touches the same files you are modifying here. As I've been pointed to these changes, I'd like to make a quick observation.

Review commits are displayed, but not the way the diff is

Quoted 1 line
(quoted diff) +0 -0
@@ -101,9 +101,9 @@ commits are displayed, but not the way the diff is 

shown e.g. with

Quoted 8 lines

Documentation/pretty-formats.txt commits are displayed, but not the way the diff is shown e.g. with

Quoted 8 lines
Documentation/pretty-formats.txt +2 -2
 `git log --raw`. To get full object names in a raw diff format,
 use `--no-abbrev`.
 
-* 'format:<string>'
+* 'format:<format-string>'
 +
-The 'format:<string>' format allows you to specify which information
+The 'format:<format-string>' format allows you to specify which 

information

Quoted 4 lines
Quoted 4 lines
Documentation/pretty-formats.txt +0 -0
 you want to show. It works a little bit like printf format,
 with the notable exception that you get a newline with '%n'
 instead of '\n'.
@@ -273,12 +273,12 @@ endif::git-rev-list[]
Quoted 8 lines

Documentation/pretty-formats.txt endif::git-rev-list[] · line 276

Quoted 5 lines
Documentation/pretty-formats.txt +1 -1
 			  If any option is provided multiple times the
 			  last occurrence wins.
 +
-The boolean options accept an optional value `[=<BOOL>]`. The values
+The boolean options accept an optional value `[=<value>]`. The values

Here you change "BOOL" to "value", below you change it to "bool-value".

Indeed. Should be fixed.

Quoted 17 lines
Quoted 12 lines
Documentation/pretty-formats.txt +1 -1
 `true`, `false`, `on`, `off` etc. are all accepted. See the "boolean"
 sub-section in "EXAMPLES" in linkgit:git-config[1]. If a boolean
 option is given with no value, it's enabled.
 +
-** 'key=<K>': only show trailers with specified key. Matching is done
+** 'key=<key>': only show trailers with specified <key>. Matching is done
    case-insensitively and trailing colon is optional. If option is
    given multiple times trailer lines matching any of the keys are
    shown. This option automatically enables the `only` option so that

Documentation/pretty-formats.txt option is given with no value, it's enabled. · line 289

Quoted 5 lines
Documentation/pretty-formats.txt +1 -1
@@ -286,9 +286,9 @@ option is given with no value, it's enabled.
    desired it can be disabled with `only=false`.  E.g.,
    `%(trailers:key=Reviewed-by)` shows trailer lines with key
    `Reviewed-by`.
-** 'only[=<BOOL>]': select whether non-trailer lines from the trailer
+** 'only[=<bool-value>]': select whether non-trailer lines from the 

trailer

Quoted 4 lines
Quoted 4 lines
Documentation/pretty-formats.txt +1 -1
    block should be included.
-** 'separator=<SEP>': specify a separator inserted between trailer
+** 'separator=<sep>': specify a separator inserted between trailer
    lines. When this option is not given each trailer line is
Quoted 8 lines

Documentation/pretty-formats.txt option is given with no value, it's enabled. · line 299

Quoted 8 lines
Documentation/pretty-formats.txt +1 -1
    terminated with a line feed character. The string SEP may contain
    the literal formatting codes described above. To use comma as
@@ -296,15 +296,15 @@ option is given with no value, it's enabled.
    next option. E.g., `%(trailers:key=Ticket,separator=%x2C )`
    shows all trailer lines whose key is "Ticket" separated by a comma
    and a space.
-** 'unfold[=<BOOL>]': make it behave as if interpret-trailer's `--unfold`
+** 'unfold[=<bool-value>]': make it behave as if interpret-trailer's `--

unfold`

Quoted 24 lines
Quoted 5 lines
Documentation/pretty-formats.txt +0 -3
    option was given. E.g.,
    `%(trailers:only,unfold=true)` unfolds and shows all trailer lines.
-** 'keyonly[=<BOOL>]': only show the key part of the trailer.
-** 'valueonly[=<BOOL>]': only show the value part of the trailer.
-** 'key_value_separator=<SEP>': specify a separator inserted between

Documentation/pretty-formats.txt option is given with no value, it's enabled. · line 310

Quoted 10 lines
Documentation/pretty-formats.txt +4 -1
+** 'keyonly[=<bool-value>]': only show the key part of the trailer.
+** 'valueonly[=<bool-value>]': only show the value part of the trailer.
+** 'key_value_separator=<sep>': specify a separator inserted between
    trailer lines. When this option is not given each trailer key-value
    pair is separated by ": ". Otherwise it shares the same semantics
-   as 'separator=<SEP>' above.
+   as 'separator=<sep>' above.
 
 NOTE: Some placeholders may depend on other options given to the
 revision traversal engine. For example, the `%g*` reflog options will

These changes over here are contrary to the statement in the commit message. In addition to switching to hyphens, they:

- switch casing (okay, makes sense, you point this out in the cover letter but maybe it's worth mentioning it in the commit message too? idk)

Quoted 6 lines

- change the terms used -- and this I don't understand. I'm not really bothered by switching <n> to <number> or <k> to <key>, as these changes seem reasonable (though again, they are not mentioned in the commit message). However, "bool-value" seems odd. Why that and not "number-value"? IMHO the "value" is redundant here, let it be "bool" and "number".

My initial aim was to be more descriptive. The placeholders act as variables and you don't name variables with their types.
Fair enough, "bool-value" isn't the best example, but there are some facts that drove these choices:
* You can't expect manpage readers to be seasoned C programmers that
understand what the word "bool" means. Using boolean-value, makes the reference to the description in the previous paragraph.
* I'm facing a similar issue with translators. Some of them have some culture
of computer science, but most of them are not programmers. Having more meaningful placeholders helps them find a correct translation: this is a bool value, not the bool type.

I did not push far to change all the placeholders that were not descriptive. Maybe another set of patches, if it is acceptable.

The choices here may be awkward; no problem to propose even more descriptive names.

Quoted 5 lines

Similarly "the 'format:<format-string>' format" feels highly redundant, I expect the reader knows that <string> contains a format inside it as it's mentioned immediately before *and* after.

The fact that it is a string doesn't tell you much about what you can do with it. For me, this isn't a problem that the explanation is redundant.

#19 lore raw

Re: [PATCH v2 4/9] doc: use only hyphens as word separators in placeholders

Quoted 11 lines · Jean-Noël AVILA

The choices here may be awkward; no problem to propose even more descriptive names.

Quoted 5 lines

Similarly "the 'format:<format-string>' format" feels highly redundant, I expect the reader knows that <string> contains a format inside it as it's mentioned immediately before *and* after.

The fact that it is a string doesn't tell you much about what you can do with it. For me, this isn't a problem that the explanation is redundant.

I agree that --format:<string> is quite poor, as type alone does not give readers any information on what it means and how it is supposed to look like. Calling it <format-string> does make quite a lot of sense.

It is a bit less obvious how much value we get out of <bool-value>, though. In --opt=<arg> scheme of things, what comes after '=' are all <value>s, so <bool-value> does not clarify over <bool> like the way <format-string> clarifies over <string>.

#20 lore raw

Re: [PATCH v2 4/9] doc: use only hyphens as word separators in placeholders

Quoted 16 lines · Junio C Hamano
Quoted 9 lines · Jean-Noël AVILA

The choices here may be awkward; no problem to propose even more descriptive names.

Quoted 4 lines

Similarly "the 'format:<format-string>' format" feels highly redundant, I expect the reader knows that <string> contains a format inside it as it's mentioned immediately before *and* after.

The fact that it is a string doesn't tell you much about what you can do with it. For me, this isn't a problem that the explanation is redundant.

I agree that --format:<string> is quite poor, as type alone does not give readers any information on what it means and how it is supposed to look like. Calling it <format-string> does make quite a lot of sense.

Quoted 5 lines

It is a bit less obvious how much value we get out of <bool-value>, though. In --opt=<arg> scheme of things, what comes after '=' are all <value>s, so <bool-value> does not clarify over <bool> like the way <format-string> clarifies over <string>.

Agreed. Should reroll the patch series?

#21 lore raw

Re: [PATCH v2 4/9] doc: use only hyphens as word separators in placeholders

Quoted 17 lines · Jean-Noël Avila
Quoted 16 lines · Junio C Hamano
Quoted 9 lines · Jean-Noël AVILA

The choices here may be awkward; no problem to propose even more descriptive names.

Quoted 4 lines

Similarly "the 'format:<format-string>' format" feels highly redundant, I expect the reader knows that <string> contains a format inside it as it's mentioned immediately before *and* after.

The fact that it is a string doesn't tell you much about what you can do with it. For me, this isn't a problem that the explanation is redundant.

I agree that --format:<string> is quite poor, as type alone does not give readers any information on what it means and how it is supposed to look like. Calling it <format-string> does make quite a lot of sense.

Quoted 6 lines
Quoted 5 lines

It is a bit less obvious how much value we get out of <bool-value>, though. In --opt=<arg> scheme of things, what comes after '=' are all <value>s, so <bool-value> does not clarify over <bool> like the way <format-string> clarifies over <string>.

Agreed. Should reroll the patch series?

I guess another (hopefully the final) reroll would not hurt (but we are not in hurry---this may be among the topics that graduate early in the next cycle, but not during this cycle).

Thanks.

#22 lore raw

Re: [PATCH v2 4/9] doc: use only hyphens as word separators in placeholders

Hi,

Quoted 24 lines · Junio C Hamano
Quoted 22 lines · Jean-Noël Avila
Quoted 21 lines · Junio C Hamano
Quoted 9 lines · Jean-Noël AVILA

The choices here may be awkward; no problem to propose even more descriptive names.

Quoted 4 lines

Similarly "the 'format:<format-string>' format" feels highly redundant, I expect the reader knows that <string> contains a format inside it as it's mentioned immediately before *and* after.

The fact that it is a string doesn't tell you much about what you can do with it. For me, this isn't a problem that the explanation is redundant.

I agree that --format:<string> is quite poor, as type alone does not give readers any information on what it means and how it is supposed to look like. Calling it <format-string> does make quite a lot of sense.

It is a bit less obvious how much value we get out of <bool-value>, though. In --opt=<arg> scheme of things, what comes after '=' are all <value>s, so <bool-value> does not clarify over <bool> like the way <format-string> clarifies over <string>.

Quoted 5 lines
Quoted 1 line

Agreed. Should reroll the patch series?

I guess another (hopefully the final) reroll would not hurt (but we are not in hurry---this may be among the topics that graduate early in the next cycle, but not during this cycle).

I fear that it won't be as easy to send the next iteration as one might
think: GitGitGadget works off of open Pull Requests on GitHub. And the branch for the Pull Request corresponding to this series has been deleted, thereby permanently closing the Pull Request (it cannot be reopened anymore): https://github.com/gitgitgadget/git/pull/1066#event-5541689437

That means that none of GitGitGadget's convenience can be used to send v3 with a range-diff. All that can be done at this point is to open a new Pull Request, generate a range-diff manually (which could very easily differ from the actual range-diff, whether by design or mistake) and put it into the cover letter, then send a "v3" (which is actually a v1).

Ciao,
Johannes

#23 lore raw

Re: [PATCH v2 4/9] doc: use only hyphens as word separators in placeholders

Quoted 11 lines · Johannes Schindelin
Quoted 7 lines

Jean-Noël Avila <[email protected]> writes:
...

Quoted 1 line

Agreed. Should reroll the patch series?

I guess another (hopefully the final) reroll would not hurt (but we are not in hurry---this may be among the topics that graduate early in the next cycle, but not during this cycle).

I fear that it won't be as easy to send the next iteration as one might
think: GitGitGadget works off of open Pull Requests on GitHub. And ... ...it into the cover letter, then send a "v3" (which is actually a v1).

I see Jean-Noël is a long-time community member whose contribution dates back to 2012, which presumably predates GGG, so I suspect that "contributors who use GGG cannot send a series without it" would not apply here.

#24 lore raw

Re: [PATCH v2 4/9] doc: use only hyphens as word separators in placeholders

In reply to Johannes Schindelin
Quoted 5 lines · Johannes Schindelin

I fear that it won't be as easy to send the next iteration as one might
think: GitGitGadget works off of open Pull Requests on GitHub. And the branch for the Pull Request corresponding to this series has been deleted, thereby permanently closing the Pull Request (it cannot be reopened anymore): https://github.com/gitgitgadget/git/pull/1066#event-5541689437

In fact, I know you *can* re-open such a PR. The author of the PR would need to restore the branch in the fork, and ensure that the latest commit on the branch is the same commit that it was when the branch got deleted.

I know this is possible because I've accidentally deleted branches that I thought were already merged, when they got reused for another PR that was still open --I restored the PR by restoring the branch immediately, I *think* github may offer a button to do that on the PR webpage but I'm not sure.

Signature · 2 lines
Eli Schwartz
Arch Linux Bug Wrangler and Trusted User
#25 lore raw

PATCH v2 5/9 doc: git-ls-files: express options as optional alternatives

In reply to Jean-Noël Avila via GitGitGadget

From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <[email protected]>

That's how alternative options are expressed in general.

---
 Documentation/git-ls-files.txt | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
Documentation/git-ls-files.txt +3 -3
index 6d11ab506b7..2e3d695fa21 100644
@@ -10,9 +10,9 @@ SYNOPSIS
 --------
 [verse]
 'git ls-files' [-z] [-t] [-v] [-f]
-		(--[cached|deleted|others|ignored|stage|unmerged|killed|modified])*
-		(-[c|d|o|i|s|u|k|m])*
-		[--eol]
+		[-c|--cached] [-d|--deleted] [-o|--others] [-i|--|ignored]
+		[-s|--stage] [-u|--unmerged] [-k|--|killed] [-m|--modified]
+		[--directory [--no-empty-directory]] [--eol]
 		[--deduplicate]
 		[-x <pattern>|--exclude=<pattern>]
 		[-X <file>|--exclude-from=<file>]
Signature · 1 line
gitgitgadget
#26 lore raw

PATCH v2 6/9 doc: use three dots for indicating repetition instead of star

In reply to Jean-Noël Avila via GitGitGadget

From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <[email protected]>

This is how it is specified in CodingGuidelines.

---
 Documentation/git-fsck.txt        | 2 +-
 Documentation/git-merge-index.txt | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
Documentation/git-fsck.txt +1 -1
index bd596619c0d..5088783dccb 100644
@@ -12,7 +12,7 @@ SYNOPSIS
 'git fsck' [--tags] [--root] [--unreachable] [--cache] [--no-reflogs]
 	 [--[no-]full] [--strict] [--verbose] [--lost-found]
 	 [--[no-]dangling] [--[no-]progress] [--connectivity-only]
-	 [--[no-]name-objects] [<object>*]
+	 [--[no-]name-objects] [<object>...]
 
 DESCRIPTION
 -----------
Documentation/git-merge-index.txt +1 -1
index 2ab84a91e53..eea56b3154e 100644
@@ -9,7 +9,7 @@ git-merge-index - Run a merge for files needing merging
 SYNOPSIS
 --------
 [verse]
-'git merge-index' [-o] [-q] <merge-program> (-a | [--] <file>*)
+'git merge-index' [-o] [-q] <merge-program> (-a | ( [--] <file>...) )
 
 DESCRIPTION
 -----------
Signature · 1 line
gitgitgadget
#27 lore raw

PATCH v2 7/9 doc: uniformize <URL> placeholders' case

In reply to Jean-Noël Avila via GitGitGadget

From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <[email protected]>

URL being an acronym, it deserves to be kept uppercase.

---
 Documentation/git-http-fetch.txt   | 2 +-
 Documentation/git-http-push.txt    | 2 +-
 Documentation/git-remote.txt       | 8 ++++----
 Documentation/git-request-pull.txt | 8 ++++----
 Documentation/gitcredentials.txt   | 4 ++--
 Documentation/gitsubmodules.txt    | 2 +-
 Documentation/gitworkflows.txt     | 6 +++---
 Documentation/urls-remotes.txt     | 8 ++++----
 8 files changed, 20 insertions(+), 20 deletions(-)
Documentation/git-http-fetch.txt +1 -1
index fa4bb6cbc3e..319062c021b 100644
@@ -9,7 +9,7 @@ git-http-fetch - Download from a remote Git repository via HTTP
 SYNOPSIS
 --------
 [verse]
-'git http-fetch' [-c] [-t] [-a] [-d] [-v] [-w <filename>] [--recover] [--stdin | --packfile=<hash> | <commit>] <url>
+'git http-fetch' [-c] [-t] [-a] [-d] [-v] [-w <filename>] [--recover] [--stdin | --packfile=<hash> | <commit>] <URL>
 
 DESCRIPTION
 -----------
Documentation/git-http-push.txt +1 -1
index ea03a4eeb0f..78f2bb75523 100644
@@ -9,7 +9,7 @@ git-http-push - Push objects over HTTP/DAV to another repository
 SYNOPSIS
 --------
 [verse]
-'git http-push' [--all] [--dry-run] [--force] [--verbose] <url> <ref> [<ref>...]
+'git http-push' [--all] [--dry-run] [--force] [--verbose] <URL> <ref> [<ref>...]
 
 DESCRIPTION
 -----------
Documentation/git-remote.txt +4 -4
index 31c29c9b31b..2bebc32566b 100644
@@ -10,7 +10,7 @@ SYNOPSIS
 --------
 [verse]
 'git remote' [-v | --verbose]
-'git remote add' [-t <branch>] [-m <master>] [-f] [--[no-]tags] [--mirror=(fetch|push)] <name> <url>
+'git remote add' [-t <branch>] [-m <master>] [-f] [--[no-]tags] [--mirror=(fetch|push)] <name> <URL>
 'git remote rename' <old> <new>
 'git remote remove' <name>
 'git remote set-head' <name> (-a | --auto | -d | --delete | <branch>)
@@ -18,7 +18,7 @@ SYNOPSIS
 'git remote get-url' [--push] [--all] <name>
 'git remote set-url' [--push] <name> <newurl> [<oldurl>]
 'git remote set-url --add' [--push] <name> <newurl>
-'git remote set-url --delete' [--push] <name> <url>
+'git remote set-url --delete' [--push] <name> <URL>
 'git remote' [-v | --verbose] 'show' [-n] <name>...
 'git remote prune' [-n | --dry-run] <name>...
 'git remote' [-v | --verbose] 'update' [-p | --prune] [(<group> | <remote>)...]
@@ -47,7 +47,7 @@ subcommands are available to perform operations on the remotes.
 'add'::
 
 Add a remote named <name> for the repository at
-<url>.  The command `git fetch <name>` can then be used to create and
+<URL>.  The command `git fetch <name>` can then be used to create and
 update remote-tracking branches <name>/<branch>.
 +
 With `-f` option, `git fetch <name>` is run immediately after
@@ -152,7 +152,7 @@ With `--push`, push URLs are manipulated instead of fetch URLs.
 With `--add`, instead of changing existing URLs, new URL is added.
 +
 With `--delete`, instead of changing existing URLs, all URLs matching
-regex <url> are deleted for remote <name>.  Trying to delete all
+regex <URL> are deleted for remote <name>.  Trying to delete all
 non-push URLs is an error.
 +
 Note that the push URL and the fetch URL, even though they can
Documentation/git-request-pull.txt +4 -4
index 4d4392d0f84..fa5a4267092 100644
@@ -8,7 +8,7 @@ git-request-pull - Generates a summary of pending changes
 SYNOPSIS
 --------
 [verse]
-'git request-pull' [-p] <start> <url> [<end>]
+'git request-pull' [-p] <start> <URL> [<end>]
 
 DESCRIPTION
 -----------
@@ -21,7 +21,7 @@ the changes and indicates from where they can be pulled.
 The upstream project is expected to have the commit named by
 `<start>` and the output asks it to integrate the changes you made
 since that commit, up to the commit named by `<end>`, by visiting
-the repository named by `<url>`.
+the repository named by `<URL>`.
 
 
 OPTIONS
@@ -33,14 +33,14 @@ OPTIONS
 	Commit to start at.  This names a commit that is already in
 	the upstream history.
 
-<url>::
+<URL>::
 	The repository URL to be pulled from.
 
 <end>::
 	Commit to end at (defaults to HEAD).  This names the commit
 	at the tip of the history you are asking to be pulled.
 +
-When the repository named by `<url>` has the commit at a tip of a
+When the repository named by `<URL>` has the commit at a tip of a
 ref that is different from the ref you have locally, you can use the
 `<local>:<remote>` syntax, to have its local name, a colon `:`, and
 its remote name.
Documentation/gitcredentials.txt +2 -2
index 758bf39ba38..80517b4eb2c 100644
@@ -132,7 +132,7 @@ because the hostnames differ. Nor would it match `foo.example.com`; Git
 compares hostnames exactly, without considering whether two hosts are part of
 the same domain. Likewise, a config entry for `http://example.com` would not
 match: Git compares the protocols exactly.  However, you may use wildcards in
-the domain name and other pattern matching techniques as with the `http.<url>.*`
+the domain name and other pattern matching techniques as with the `http.<URL>.*`
 options.
 
 If the "pattern" URL does include a path component, then this too must match
@@ -147,7 +147,7 @@ CONFIGURATION OPTIONS
 
 Options for a credential context can be configured either in
 `credential.*` (which applies to all credentials), or
-`credential.<url>.*`, where <url> matches the context as described
+`credential.<URL>.*`, where <URL> matches the context as described
 above.
 
 The following options are available in either location:
Documentation/gitsubmodules.txt +1 -1
index 891c8da4fdf..941858a6ecc 100644
@@ -226,7 +226,7 @@ Workflow for a third party library
 ----------------------------------
 
   # Add a submodule
-  git submodule add <url> <path>
+  git submodule add <URL> <path>
 
   # Occasionally update the submodule to a new version:
   git -C <path> checkout <new version>
Documentation/gitworkflows.txt +3 -3
index 47cf97f9bea..59305265c5a 100644
@@ -394,7 +394,7 @@ request to do so by mail.  Such a request looks like
 
 -------------------------------------
 Please pull from
-    <url> <branch>
+    <URL> <branch>
 -------------------------------------
 
 In that case, 'git pull' can do the fetch and merge in one go, as
@@ -403,7 +403,7 @@ follows.
 .Push/pull: Merging remote topics
 [caption="Recipe: "]
 =====================================
-`git pull <url> <branch>`
+`git pull <URL> <branch>`
 =====================================
 
 Occasionally, the maintainer may get merge conflicts when they try to
@@ -440,7 +440,7 @@ merge because you cannot format-patch merges):
 .format-patch/am: Keeping topics up to date
 [caption="Recipe: "]
 =====================================
-`git pull --rebase <url> <branch>`
+`git pull --rebase <URL> <branch>`
 =====================================
 
 You can then fix the conflicts during the rebase.  Presumably you have
Documentation/urls-remotes.txt +4 -4
index bd184cd6539..86d0008f94d 100644
@@ -26,14 +26,14 @@ config file would appear like this:
 
 ------------
 	[remote "<name>"]
-		url = <url>
+		url = <URL>
 		pushurl = <pushurl>
 		push = <refspec>
 		fetch = <refspec>
 ------------
 
 The `<pushurl>` is used for pushes only. It is optional and defaults
-to `<url>`.
+to `<URL>`.
 
 Named file in `$GIT_DIR/remotes`
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -67,10 +67,10 @@ This file should have the following format:
 
 
 ------------
-	<url>#<head>
+	<URL>#<head>
 ------------
 
-`<url>` is required; `#<head>` is optional.
+`<URL>` is required; `#<head>` is optional.
 
 Depending on the operation, git will use one of the following
 refspecs, if you don't provide one on the command line.
Signature · 1 line
gitgitgadget
#28 lore raw

Re: [PATCH v2 7/9] doc: uniformize <URL> placeholders' case

Quoted 3 lines · Jean-Noël Avila via GitGitGadget

From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <[email protected]>

URL being an acronym, it deserves to be kept uppercase.

Yes! Thanks.

#29 lore raw

PATCH v2 8/9 doc: git-http-push: describe the refs as pattern pairs

In reply to Jean-Noël Avila via GitGitGadget

From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <[email protected]>

Each member of the pair is explained but they are not defined beforehand.

---
 Documentation/git-http-push.txt | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)
Documentation/git-http-push.txt +6 -7
index 78f2bb75523..7c6a6dd7f6a 100644
@@ -63,16 +63,15 @@ of such patterns separated by a colon ":" (this means that a ref name
 cannot have a colon in it).  A single pattern '<name>' is just a
 shorthand for '<name>:<name>'.
 
-Each pattern pair consists of the source side (before the colon)
-and the destination side (after the colon).  The ref to be
-pushed is determined by finding a match that matches the source
-side, and where it is pushed is determined by using the
-destination side.
+Each pattern pair '<src>:<dst>' consists of the source side (before
+the colon) and the destination side (after the colon).  The ref to be
+pushed is determined by finding a match that matches the source side,
+and where it is pushed is determined by using the destination side.
 
- - It is an error if <src> does not match exactly one of the
+ - It is an error if '<src>' does not match exactly one of the
    local refs.
 
- - If <dst> does not match any remote ref, either
+ - If '<dst>' does not match any remote ref, either
 
    * it has to start with "refs/"; <dst> is used as the
      destination literally in this case.
Signature · 1 line
gitgitgadget
#30 lore raw

Re: [PATCH v2 8/9] doc: git-http-push: describe the refs as pattern pairs

Documentation/git-http-push.txt of such patterns separated by a colon ":" (this means that a ref name · line 69

Quoted 9 lines · Jean-Noël Avila via GitGitGadget
Documentation/git-http-push.txt +4 -5
-Each pattern pair consists of the source side (before the colon)
-and the destination side (after the colon).  The ref to be
-pushed is determined by finding a match that matches the source
-side, and where it is pushed is determined by using the
-destination side.
+Each pattern pair '<src>:<dst>' consists of the source side (before
+the colon) and the destination side (after the colon).  The ref to be
+pushed is determined by finding a match that matches the source side,
+and where it is pushed is determined by using the destination side.

Looks good. It is unfortunate that this does not share the text with description of refspec in "git push" documentation page, but let's not worry about it too much. I think we will probably start talking about deprecating "git http-push". Who still uses it and why, I do not think of a good reason offhand.

Thanks.

#31 lore raw

PATCH v2 9/9 doc: git-init: clarify file modes in octal.

In reply to Jean-Noël Avila via GitGitGadget

From: =?UTF-8?q?Jean-No=C3=ABl=20Avila?= <[email protected]>

The previous explanation was mixing the format with the identity of the field.

---
 Documentation/git-init.txt | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)
Documentation/git-init.txt +9 -7
index fdb7b3f367d..af0d2ee1825 100644
@@ -79,7 +79,7 @@ repository.  If not specified, fall back to the default name (currently
 `master`, but this is subject to change in the future; the name can be
 customized via the `init.defaultBranch` configuration variable).
 
---shared[=(false|true|umask|group|all|world|everybody|0xxx)]::
+--shared[=(false|true|umask|group|all|world|everybody|<umask>)]::
 
 Specify that the Git repository is to be shared amongst several users.  This
 allows users belonging to the same group to push into that
@@ -110,13 +110,15 @@ the repository permissions.
 
 Same as 'group', but make the repository readable by all users.
 
-'0xxx'::
+'<umask>'::
 
-'0xxx' is an octal number and each file will have mode '0xxx'. '0xxx' will
-override users' umask(2) value (and not only loosen permissions as 'group' and
-'all' does). '0640' will create a repository which is group-readable, but not
-group-writable or accessible to others. '0660' will create a repo that is
-readable and writable to the current user and group, but inaccessible to others.
+'<umask>' is an 3-digit octal number prefixed with `0` and each file
+will have mode '<umask>'. '<umask>' will override users' umask(2)
+value (and not only loosen permissions as 'group' and 'all'
+does). '0640' will create a repository which is group-readable, but
+not group-writable or accessible to others. '0660' will create a repo
+that is readable and writable to the current user and group, but
+inaccessible to others.
 --
 
 By default, the configuration flag `receive.denyNonFastForwards` is enabled
Signature · 1 line
gitgitgadget
#32 lore raw

Re: [PATCH v2 9/9] doc: git-init: clarify file modes in octal.

Quoted 14 lines · Jean-Noël Avila via GitGitGadget
---shared[=(false|true|umask|group|all|world|everybody|0xxx)]::
+--shared[=(false|true|umask|group|all|world|everybody|<umask>)]::

Specify that the Git repository is to be shared amongst several users. This allows users belonging to the same group to push into that

(quoted diff) +1 -3
@@ -110,13 +110,15 @@ the repository permissions.
 
 Same as 'group', but make the repository readable by all users.
 
-'0xxx'::
+'<umask>'::
 
-'0xxx' is an octal number and each file will have mode '0xxx'. '0xxx' will
-override users' umask(2) value (and not only loosen permissions as 'group' and

Review the repository permissions. · line 121

Quoted 10 lines
(quoted diff) +7 -3
-'all' does). '0640' will create a repository which is group-readable, but not
-group-writable or accessible to others. '0660' will create a repo that is
-readable and writable to the current user and group, but inaccessible to others.
+'<umask>' is an 3-digit octal number prefixed with `0` and each file
+will have mode '<umask>'. '<umask>' will override users' umask(2)
+value (and not only loosen permissions as 'group' and 'all'
+does). '0640' will create a repository which is group-readable, but
+not group-writable or accessible to others. '0660' will create a repo
+that is readable and writable to the current user and group, but
+inaccessible to others.

Giving it a name that reflects the meaning is a great change.

Unfortunately, I think the original text is wrong to call it umask, as this is bitwise opposite of umask(2). umask 027 for example means that we *drop* bits 020 and 007, causing the group members *losing* write access, and other folks *losing* all access, from the resulting filesystem entity. But with this, as the description says, you would write "0640" to mean "group members cannot write, others have no access".

How about calling it <perm> (or <perm-bits>)?

----- >8 --------- >8 --------- >8 --------- >8 -----
From: Jean-Noël Avila <[email protected]>
Subject: [PATCH] doc: git-init: clarify file modes in octal.

The previous explanation was mixing the format with the identity of the field.

---

* Giving a "3-digit octal prefixed with 0" would work fine, but technically, the value is parsed as an octal without the 0 prefix and there is no requirement for the number of digits, either. But giving a stricter-than-necessary instruction is probably a good idea in this case. It makes the description simpler.

 Documentation/git-init.txt | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)
Documentation/git-init.txt +9 -7
index fdb7b3f367..af0d2ee182 100644
@@ -79,7 +79,7 @@ repository.  If not specified, fall back to the default name (currently
 `master`, but this is subject to change in the future; the name can be
 customized via the `init.defaultBranch` configuration variable).
 
---shared[=(false|true|umask|group|all|world|everybody|0xxx)]::
+--shared[=(false|true|umask|group|all|world|everybody|<perm>)]::
 
 Specify that the Git repository is to be shared amongst several users.  This
 allows users belonging to the same group to push into that
@@ -110,13 +110,15 @@ the repository permissions.
 
 Same as 'group', but make the repository readable by all users.
 
-'0xxx'::
+'<perm>'::
 
-'0xxx' is an octal number and each file will have mode '0xxx'. '0xxx' will
-override users' umask(2) value (and not only loosen permissions as 'group' and
-'all' does). '0640' will create a repository which is group-readable, but not
-group-writable or accessible to others. '0660' will create a repo that is
-readable and writable to the current user and group, but inaccessible to others.
+'<perm>' is an 3-digit octal number prefixed with `0` and each file
+will have mode '<perm>'. '<perm>' will override users' umask(2)
+value (and not only loosen permissions as 'group' and 'all'
+does). '0640' will create a repository which is group-readable, but
+not group-writable or accessible to others. '0660' will create a repo
+that is readable and writable to the current user and group, but
+inaccessible to others.
 --
 
 By default, the configuration flag `receive.denyNonFastForwards` is enabled
Signature · 1 line
2.33.1-984-g9137471b0c
#33 lore raw

Re: [PATCH v2 9/9] doc: git-init: clarify file modes in octal.

Quoted 1 line · Junio C Hamano

How about calling it <perm> (or <perm-bits>)?

I think it is better to queue your original as-is, as a part of the topic whose theme is to correct the formatting and phrasing without changing the spirit of the existing text.

Fixing the "umask confusion" should be left to a separate patch on top.

----- >8 --------- >8 --------- >8 --------- >8 -----
Subject: init doc: --shared=0xxx does not give umask but perm bits

The description that 0640 makes sure that the group members can read the repository is correct, but calling that octal number a <umask> is wrong. Let's call it <perm>, as the value is used to set the permission bits.

---
 Documentation/git-init.txt | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)
Documentation/git-init.txt +6 -5
index af0d2ee182..42268ada22 100644
@@ -79,7 +79,7 @@ repository.  If not specified, fall back to the default name (currently
 `master`, but this is subject to change in the future; the name can be
 customized via the `init.defaultBranch` configuration variable).
 
---shared[=(false|true|umask|group|all|world|everybody|<umask>)]::
+--shared[=(false|true|umask|group|all|world|everybody|<perm>)]::
 
 Specify that the Git repository is to be shared amongst several users.  This
 allows users belonging to the same group to push into that
@@ -110,15 +110,16 @@ the repository permissions.
 
 Same as 'group', but make the repository readable by all users.
 
-'<umask>'::
+'<perm>'::
 
-'<umask>' is an 3-digit octal number prefixed with `0` and each file
-will have mode '<umask>'. '<umask>' will override users' umask(2)
+'<perm>' is an 3-digit octal number prefixed with `0` and each file
+will have mode '<perm>'. '<perm>' will override users' umask(2)
 value (and not only loosen permissions as 'group' and 'all'
 does). '0640' will create a repository which is group-readable, but
 not group-writable or accessible to others. '0660' will create a repo
 that is readable and writable to the current user and group, but
-inaccessible to others.
+inaccessible to others (directories and executable files get their
+`x` bit from the `r` bit for corresponding classes of uses).
 --
 
 By default, the configuration flag `receive.denyNonFastForwards` is enabled
#34 lore raw

Re: [PATCH v2 0/9] doc: fix grammar rules in commands' syntax

In reply to Jean-Noël Avila via GitGitGadget
Quoted 18 lines · Jean-Noël Avila via GitGitGadget

There are command expressions which do not follow the grammar syntax rules.

According to the coding guidelines, the placeholders must:

* be in small letters
* enclosed in angle brackets
* use hyphens as spaces

They also must represent tokens' meaning as atomic entities.

Some fixups for git-credential, git-ls-files, git-init and git-http-push.

changes since v1:

* split changes across simpler commits

Quoted 10 lines

Jean-Noël Avila (9):
doc: fix git credential synopsis
doc: split placeholders as individual tokens
doc: express grammar placeholders between angle brackets
doc: use only hyphens as word separators in placeholders
doc: git-ls-files: express options as optional alternatives
doc: use three dots for indicating repetition instead of star
doc: uniformize <URL> placeholders' case
doc: git-http-push: describe the refs as pattern pairs
doc: git-init: clarify file modes in octal.

Thanks. All looked good to me.

#35 lore raw

v3 cover doc: fix grammar rules in commands' syntax

In reply to Jean-Noël Avila via GitGitGadget

There are command expressions which do not follow the grammar syntax rules.

According to the coding guidelines, the placeholders must:

* be in small letters
* enclosed in angle brackets
* use hyphens as spaces

They also must represent tokens' meaning as atomic entities.

Some fixups for git-credential, git-ls-files, git-init and git-http-push.

changes since v1:

* split changes across simpler commits

changes since v2:

* remove back-quote formatting of placeholders from patches
* revert renaming <bool> placeholder

Jean-Noël Avila (9):
doc: fix git credential synopsis
doc: split placeholders as individual tokens
doc: express grammar placeholders between angle brackets
doc: use only hyphens as word separators in placeholders
doc: git-ls-files: express options as optional alternatives
doc: use three dots for indicating repetition instead of star
doc: uniformize <URL> placeholders' case
doc: git-http-push: describe the refs as pattern pairs
doc: git-init: clarify file modes in octal.

Junio C Hamano (1):
init doc: --shared=0xxx does not give umask but perm bits

 Documentation/date-formats.txt        |  6 +--
 Documentation/git-archimport.txt      | 14 +++----
 Documentation/git-checkout.txt        | 36 +++++++++---------
 Documentation/git-cherry-pick.txt     |  6 +--
 Documentation/git-clone.txt           |  8 ++--
 Documentation/git-config.txt          | 46 +++++++++++------------
 Documentation/git-credential.txt      |  2 +-
 Documentation/git-cvsexportcommit.txt |  4 +-
 Documentation/git-cvsimport.txt       |  8 ++--
 Documentation/git-diff-files.txt      |  2 +-
 Documentation/git-diff-index.txt      |  2 +-
 Documentation/git-diff-tree.txt       |  2 +-
 Documentation/git-fsck.txt            |  2 +-
 Documentation/git-gui.txt             |  2 +-
 Documentation/git-help.txt            |  6 +--
 Documentation/git-http-fetch.txt      |  2 +-
 Documentation/git-http-push.txt       | 15 ++++----
 Documentation/git-init-db.txt         |  2 +-
 Documentation/git-init.txt            | 27 ++++++++------
 Documentation/git-log.txt             |  8 ++--
 Documentation/git-ls-files.txt        |  6 +--
 Documentation/git-merge-index.txt     |  2 +-
 Documentation/git-p4.txt              |  8 ++--
 Documentation/git-pack-objects.txt    |  4 +-
 Documentation/git-pack-redundant.txt  |  2 +-
 Documentation/git-reflog.txt          |  4 +-
 Documentation/git-remote.txt          |  8 ++--
 Documentation/git-request-pull.txt    |  8 ++--
 Documentation/git-shortlog.txt        |  8 ++--
 Documentation/git-sparse-checkout.txt |  2 +-
 Documentation/git-stage.txt           |  2 +-
 Documentation/git-svn.txt             |  2 +-
 Documentation/git-web--browse.txt     |  2 +-
 Documentation/gitcredentials.txt      |  4 +-
 Documentation/gitsubmodules.txt       |  2 +-
 Documentation/gitworkflows.txt        |  6 +--
 Documentation/pretty-formats.txt      | 54 +++++++++++++--------------
 Documentation/urls-remotes.txt        |  8 ++--
 builtin/credential.c                  |  2 +-
 39 files changed, 168 insertions(+), 166 deletions(-)
Signature · 1 line
2.33.1
#36 lore raw

PATCH v3 1/10 doc: fix git credential synopsis

The subcommand of git credential is not optional.

---
 Documentation/git-credential.txt | 2 +-
 builtin/credential.c             | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
Documentation/git-credential.txt +1 -1
index 206e3c5f40..f18673017f 100644
@@ -8,7 +8,7 @@ git-credential - Retrieve and store user credentials
 SYNOPSIS
 --------
 ------------------
-git credential <fill|approve|reject>
+'git credential' (fill|approve|reject)
 ------------------
 
 DESCRIPTION
builtin/credential.c +1 -1
index d75dcdc64a..d7b304fa08 100644
@@ -4,7 +4,7 @@
 #include "config.h"
 
 static const char usage_msg[] =
-	"git credential [fill|approve|reject]";
+	"git credential (fill|approve|reject)";
 
 int cmd_credential(int argc, const char **argv, const char *prefix)
 {
Signature · 1 line
2.33.1
#37 lore raw

PATCH v3 2/10 doc: split placeholders as individual tokens

In reply to Jean-Noël Avila

The placeholders represent atoms of tokens and must not be aggregates.

---
 Documentation/git-archimport.txt  | 14 +++++++-------
 Documentation/git-p4.txt          |  2 +-
 Documentation/git-web--browse.txt |  2 +-
 3 files changed, 9 insertions(+), 9 deletions(-)
Documentation/git-archimport.txt +7 -7
index a595a0ffee..847777fd17 100644
@@ -9,14 +9,14 @@ git-archimport - Import a GNU Arch repository into Git
 SYNOPSIS
 --------
 [verse]
-'git archimport' [-h] [-v] [-o] [-a] [-f] [-T] [-D depth] [-t tempdir]
-               <archive/branch>[:<git-branch>] ...
+'git archimport' [-h] [-v] [-o] [-a] [-f] [-T] [-D <depth>] [-t <tempdir>]
+	       <archive>/<branch>[:<git-branch>]...
 
 DESCRIPTION
 -----------
 Imports a project from one or more GNU Arch repositories.
 It will follow branches
-and repositories within the namespaces defined by the <archive/branch>
+and repositories within the namespaces defined by the <archive>/<branch>
 parameters supplied. If it cannot find the remote branch a merge comes from
 it will just import it as a regular commit. If it can find it, it will mark it
 as a merge whenever possible (see discussion below).
@@ -27,7 +27,7 @@ import new branches within the provided roots.
 
 It expects to be dealing with one project only. If it sees
 branches that have different roots, it will refuse to run. In that case,
-edit your <archive/branch> parameters to define clearly the scope of the
+edit your <archive>/<branch> parameters to define clearly the scope of the
 import.
 
 'git archimport' uses `tla` extensively in the background to access the
@@ -42,7 +42,7 @@ incremental imports.
 
 While 'git archimport' will try to create sensible branch names for the
 archives that it imports, it is also possible to specify Git branch names
-manually.  To do so, write a Git branch name after each <archive/branch>
+manually.  To do so, write a Git branch name after each <archive>/<branch>
 parameter, separated by a colon.  This way, you can shorten the Arch
 branch names and convert Arch jargon to Git jargon, for example mapping a
 "PROJECT{litdd}devo{litdd}VERSION" branch to "master".
@@ -104,8 +104,8 @@ OPTIONS
 	Override the default tempdir.
 
 
-<archive/branch>::
-	Archive/branch identifier in a format that `tla log` understands.
+<archive>/<branch>::
+	<archive>/<branch> identifier in a format that `tla log` understands.
 
 
 GIT
Documentation/git-p4.txt +1 -1
index 38e5257b2a..8a6addcf72 100644
@@ -361,7 +361,7 @@ These options can be used to modify 'git p4 submit' behavior.
 	p4/master.  See the "Sync options" section above for more
 	information.
 
---commit <sha1>|<sha1..sha1>::
+--commit (<sha1>|<sha1>..<sha1>)::
     Submit only the specified commit or range of commits, instead of the full
     list of changes that are in the current Git branch.
 
Documentation/git-web--browse.txt +1 -1
index 8d162b56c5..f2f996cbe1 100644
@@ -8,7 +8,7 @@ git-web--browse - Git helper script to launch a web browser
 SYNOPSIS
 --------
 [verse]
-'git web{litdd}browse' [<options>] <url|file>...
+'git web{litdd}browse' [<options>] (<URL>|<file>)...
 
 DESCRIPTION
 -----------
Signature · 1 line
2.33.1
#38 lore raw

PATCH v3 3/10 doc: express grammar placeholders between angle brackets

In reply to Jean-Noël Avila

This discerns user inputs from verbatim options in the synopsis.

---
 Documentation/git-cherry-pick.txt     |  6 ++--
 Documentation/git-config.txt          | 46 +++++++++++++--------------
 Documentation/git-cvsexportcommit.txt |  4 +--
 Documentation/git-gui.txt             |  2 +-
 Documentation/git-help.txt            |  6 ++--
 Documentation/git-http-fetch.txt      |  2 +-
 Documentation/git-init.txt            |  2 +-
 Documentation/git-pack-objects.txt    |  4 +--
 Documentation/git-pack-redundant.txt  |  2 +-
 Documentation/git-reflog.txt          |  4 +--
 Documentation/git-sparse-checkout.txt |  2 +-
 Documentation/git-stage.txt           |  2 +-
 12 files changed, 41 insertions(+), 41 deletions(-)
Documentation/git-cherry-pick.txt +3 -3
index 5d750314b2..78dcc9171f 100644
@@ -8,7 +8,7 @@ git-cherry-pick - Apply the changes introduced by some existing commits
 SYNOPSIS
 --------
 [verse]
-'git cherry-pick' [--edit] [-n] [-m parent-number] [-s] [-x] [--ff]
+'git cherry-pick' [--edit] [-n] [-m <parent-number>] [-s] [-x] [--ff]
 		  [-S[<keyid>]] <commit>...
 'git cherry-pick' (--continue | --skip | --abort | --quit)
 
@@ -81,8 +81,8 @@ OPTIONS
 	described above, and `-r` was to disable it.  Now the
 	default is not to do `-x` so this option is a no-op.
 
--m parent-number::
---mainline parent-number::
+-m <parent-number>::
+--mainline <parent-number>::
 	Usually you cannot cherry-pick a merge because you do not know which
 	side of the merge should be considered the mainline.  This
 	option specifies the parent number (starting from 1) of
Documentation/git-config.txt +23 -23

85 lines not on this page · raw message

Documentation/git-cvsexportcommit.txt +2 -2
index 00154b6c85..41c8a8a05c 100644
@@ -9,8 +9,8 @@ git-cvsexportcommit - Export a single commit to a CVS checkout
 SYNOPSIS
 --------
 [verse]
-'git cvsexportcommit' [-h] [-u] [-v] [-c] [-P] [-p] [-a] [-d cvsroot]
-	[-w cvsworkdir] [-W] [-f] [-m msgprefix] [PARENTCOMMIT] COMMITID
+'git cvsexportcommit' [-h] [-u] [-v] [-c] [-P] [-p] [-a] [-d <cvsroot>]
+	[-w <cvs-workdir>] [-W] [-f] [-m <msgprefix>] [<parent-commit>] <commit-id>
 
 
 DESCRIPTION
Documentation/git-gui.txt +1 -1
index c9d7e96214..e8f3ccb433 100644
@@ -8,7 +8,7 @@ git-gui - A portable graphical interface to Git
 SYNOPSIS
 --------
 [verse]
-'git gui' [<command>] [arguments]
+'git gui' [<command>] [<arguments>]
 
 DESCRIPTION
 -----------
Documentation/git-help.txt +3 -3
index 96d5f598b4..44ea63cc6d 100644
@@ -9,14 +9,14 @@ SYNOPSIS
 --------
 [verse]
 'git help' [-a|--all [--[no-]verbose]]
-	   [[-i|--info] [-m|--man] [-w|--web]] [COMMAND|GUIDE]
+	   [[-i|--info] [-m|--man] [-w|--web]] [<command>|<guide>]
 'git help' [-g|--guides]
 'git help' [-c|--config]
 
 DESCRIPTION
 -----------
 
-With no options and no COMMAND or GUIDE given, the synopsis of the 'git'
+With no options and no '<command>' or '<guide>' given, the synopsis of the 'git'
 command and a list of the most commonly used Git commands are printed
 on the standard output.
 
@@ -33,7 +33,7 @@ variables.
 
 If an alias is given, git shows the definition of the alias on
 standard output. To get the manual page for the aliased command, use
-`git COMMAND --help`.
+`git <command> --help`.
 
 Note that `git --help ...` is identical to `git help ...` because the
 former is internally converted into the latter.
Documentation/git-http-fetch.txt +1 -1
index 9fa17b60e4..fa4bb6cbc3 100644
@@ -9,7 +9,7 @@ git-http-fetch - Download from a remote Git repository via HTTP
 SYNOPSIS
 --------
 [verse]
-'git http-fetch' [-c] [-t] [-a] [-d] [-v] [-w filename] [--recover] [--stdin | --packfile=<hash> | <commit>] <url>
+'git http-fetch' [-c] [-t] [-a] [-d] [-v] [-w <filename>] [--recover] [--stdin | --packfile=<hash> | <commit>] <url>
 
 DESCRIPTION
 -----------
Documentation/git-init.txt +1 -1
index b611d80697..7781d0b354 100644
@@ -12,7 +12,7 @@ SYNOPSIS
 'git init' [-q | --quiet] [--bare] [--template=<template_directory>]
 	  [--separate-git-dir <git dir>] [--object-format=<format>]
 	  [-b <branch-name> | --initial-branch=<branch-name>]
-	  [--shared[=<permissions>]] [directory]
+	  [--shared[=<permissions>]] [<directory>]
 
 
 DESCRIPTION
Documentation/git-pack-objects.txt +2 -2
index dbfd1f9017..f8344e1e5b 100644
@@ -13,8 +13,8 @@ SYNOPSIS
 	[--no-reuse-delta] [--delta-base-offset] [--non-empty]
 	[--local] [--incremental] [--window=<n>] [--depth=<n>]
 	[--revs [--unpacked | --all]] [--keep-pack=<pack-name>]
-	[--stdout [--filter=<filter-spec>] | base-name]
-	[--shallow] [--keep-true-parents] [--[no-]sparse] < object-list
+	[--stdout [--filter=<filter-spec>] | <base-name>]
+	[--shallow] [--keep-true-parents] [--[no-]sparse] < <object-list>
 
 
 DESCRIPTION
Documentation/git-pack-redundant.txt +1 -1
index f2869da572..ee7034b5e5 100644
@@ -9,7 +9,7 @@ git-pack-redundant - Find redundant pack files
 SYNOPSIS
 --------
 [verse]
-'git pack-redundant' [ --verbose ] [ --alt-odb ] < --all | .pack filename ... >
+'git pack-redundant' [ --verbose ] [ --alt-odb ] ( --all | <pack-filename>... )
 
 DESCRIPTION
 -----------
Documentation/git-reflog.txt +2 -2
index ff487ff77d..5ced7ad4f8 100644
@@ -17,12 +17,12 @@ The command takes various subcommands, and different options
 depending on the subcommand:
 
 [verse]
-'git reflog' ['show'] [log-options] [<ref>]
+'git reflog' ['show'] [<log-options>] [<ref>]
 'git reflog expire' [--expire=<time>] [--expire-unreachable=<time>]
 	[--rewrite] [--updateref] [--stale-fix]
 	[--dry-run | -n] [--verbose] [--all [--single-worktree] | <refs>...]
 'git reflog delete' [--rewrite] [--updateref]
-	[--dry-run | -n] [--verbose] ref@\{specifier\}...
+	[--dry-run | -n] [--verbose] <ref>@\{<specifier>\}...
 'git reflog exists' <ref>
 
 Reference logs, or "reflogs", record when the tips of branches and
Documentation/git-sparse-checkout.txt +1 -1
index 42056ee9ff..9a78dd721e 100644
@@ -11,7 +11,7 @@ given by a list of patterns.
 SYNOPSIS
 --------
 [verse]
-'git sparse-checkout <subcommand> [options]'
+'git sparse-checkout <subcommand> [<options>]'
 
 
 DESCRIPTION
Documentation/git-stage.txt +1 -1
index 25bcda936d..2f6aaa75b9 100644
@@ -9,7 +9,7 @@ git-stage - Add file contents to the staging area
 SYNOPSIS
 --------
 [verse]
-'git stage' args...
+'git stage' <arg>...
 
 
 DESCRIPTION
Signature · 1 line
2.33.1
#39 lore raw

PATCH v3 4/10 doc: use only hyphens as word separators in placeholders

In reply to Jean-Noël Avila

According to CodingGuidelines, multi-word placeholders should use hyphens as word separators.

---
 Documentation/date-formats.txt   |  6 ++--
 Documentation/git-checkout.txt   | 36 ++++++++++-----------
 Documentation/git-clone.txt      |  8 ++---
 Documentation/git-cvsimport.txt  |  8 ++---
 Documentation/git-diff-files.txt |  2 +-
 Documentation/git-diff-index.txt |  2 +-
 Documentation/git-diff-tree.txt  |  2 +-
 Documentation/git-init-db.txt    |  2 +-
 Documentation/git-init.txt       |  8 ++---
 Documentation/git-log.txt        |  8 ++---
 Documentation/git-p4.txt         |  6 ++--
 Documentation/git-shortlog.txt   |  8 ++---
 Documentation/git-svn.txt        |  2 +-
 Documentation/pretty-formats.txt | 54 ++++++++++++++++----------------
 14 files changed, 76 insertions(+), 76 deletions(-)
Documentation/date-formats.txt +3 -3
index 99c455f51c..67645cae64 100644
@@ -5,9 +5,9 @@ The `GIT_AUTHOR_DATE` and `GIT_COMMITTER_DATE` environment variables
 support the following date formats:
 
 Git internal format::
-	It is `<unix timestamp> <time zone offset>`, where `<unix
-	timestamp>` is the number of seconds since the UNIX epoch.
-	`<time zone offset>` is a positive or negative offset from UTC.
+	It is `<unix-timestamp> <time-zone-offset>`, where
+	`<unix-timestamp>` is the number of seconds since the UNIX epoch.
+	`<time-zone-offset>` is a positive or negative offset from UTC.
 	For example CET (which is 1 hour ahead of UTC) is `+0100`.
 
 RFC 2822::
Documentation/git-checkout.txt +18 -18
index d473c9bf38..a52dc49a3d 100644
@@ -11,7 +11,7 @@ SYNOPSIS
 'git checkout' [-q] [-f] [-m] [<branch>]
 'git checkout' [-q] [-f] [-m] --detach [<branch>]
 'git checkout' [-q] [-f] [-m] [--detach] <commit>
-'git checkout' [-q] [-f] [-m] [[-b|-B|--orphan] <new_branch>] [<start_point>]
+'git checkout' [-q] [-f] [-m] [[-b|-B|--orphan] <new-branch>] [<start-point>]
 'git checkout' [-f|--ours|--theirs|-m|--conflict=<style>] [<tree-ish>] [--] <pathspec>...
 'git checkout' [-f|--ours|--theirs|-m|--conflict=<style>] [<tree-ish>] --pathspec-from-file=<file> [--pathspec-file-nul]
 'git checkout' (-p|--patch) [<tree-ish>] [--] [<pathspec>...]
@@ -43,7 +43,7 @@ You could omit `<branch>`, in which case the command degenerates to
 rather expensive side-effects to show only the tracking information,
 if exists, for the current branch.
 
-'git checkout' -b|-B <new_branch> [<start point>]::
+'git checkout' -b|-B <new-branch> [<start-point>]::
 
 	Specifying `-b` causes a new branch to be created as if
 	linkgit:git-branch[1] were called and then checked out.  In
@@ -52,11 +52,11 @@ if exists, for the current branch.
 	`--track` without `-b` implies branch creation; see the
 	description of `--track` below.
 +
-If `-B` is given, `<new_branch>` is created if it doesn't exist; otherwise, it
+If `-B` is given, `<new-branch>` is created if it doesn't exist; otherwise, it
 is reset. This is the transactional equivalent of
 +
 ------------
-$ git branch -f <branch> [<start point>]
+$ git branch -f <branch> [<start-point>]
 $ git checkout <branch>
 ------------
 +
@@ -145,13 +145,13 @@ as `ours` (i.e. "our shared canonical history"), while what you did
 on your side branch as `theirs` (i.e. "one contributor's work on top
 of it").
 
--b <new_branch>::
-	Create a new branch named `<new_branch>` and start it at
-	`<start_point>`; see linkgit:git-branch[1] for details.
+-b <new-branch>::
+	Create a new branch named `<new-branch>` and start it at
+	`<start-point>`; see linkgit:git-branch[1] for details.
 
--B <new_branch>::
-	Creates the branch `<new_branch>` and start it at `<start_point>`;
-	if it already exists, then reset it to `<start_point>`. This is
+-B <new-branch>::
+	Creates the branch `<new-branch>` and start it at `<start-point>`;
+	if it already exists, then reset it to `<start-point>`. This is
 	equivalent to running "git branch" with "-f"; see
 	linkgit:git-branch[1] for details.
 
@@ -210,16 +210,16 @@ variable.
 	`<commit>` is not a branch name.  See the "DETACHED HEAD" section
 	below for details.
 
---orphan <new_branch>::
-	Create a new 'orphan' branch, named `<new_branch>`, started from
-	`<start_point>` and switch to it.  The first commit made on this
+--orphan <new-branch>::
+	Create a new 'orphan' branch, named `<new-branch>`, started from
+	`<start-point>` and switch to it.  The first commit made on this
 	new branch will have no parents and it will be the root of a new
 	history totally disconnected from all the other branches and
 	commits.
 +
 The index and the working tree are adjusted as if you had previously run
-`git checkout <start_point>`.  This allows you to start a new history
-that records a set of paths similar to `<start_point>` by easily running
+`git checkout <start-point>`.  This allows you to start a new history
+that records a set of paths similar to `<start-point>` by easily running
 `git commit -a` to make the root commit.
 +
 This can be useful when you want to publish the tree from a commit
@@ -229,7 +229,7 @@ whose full history contains proprietary or otherwise encumbered bits of
 code.
 +
 If you want to start a disconnected history that records a set of paths
-that is totally different from the one of `<start_point>`, then you should
+that is totally different from the one of `<start-point>`, then you should
 clear the index and the working tree right after creating the orphan
 branch by running `git rm -rf .` from the top level of the working tree.
 Afterwards you will be ready to prepare your new files, repopulating the
@@ -341,10 +341,10 @@ As a special case, you may use `A...B` as a shortcut for the
 merge base of `A` and `B` if there is exactly one merge base. You can
 leave out at most one of `A` and `B`, in which case it defaults to `HEAD`.
 
-<new_branch>::
+<new-branch>::
 	Name for the new branch.
 
-<start_point>::
+<start-point>::
 	The name of a commit at which to start the new branch; see
 	linkgit:git-branch[1] for details. Defaults to `HEAD`.
 +
Documentation/git-clone.txt +4 -4
index 3fe3810f1c..9685ea0691 100644
@@ -9,10 +9,10 @@ git-clone - Clone a repository into a new directory
 SYNOPSIS
 --------
 [verse]
-'git clone' [--template=<template_directory>]
+'git clone' [--template=<template-directory>]
 	  [-l] [-s] [--no-hardlinks] [-q] [-n] [--bare] [--mirror]
 	  [-o <name>] [-b <name>] [-u <upload-pack>] [--reference <repository>]
-	  [--dissociate] [--separate-git-dir <git dir>]
+	  [--dissociate] [--separate-git-dir <git-dir>]
 	  [--depth <depth>] [--[no-]single-branch] [--no-tags]
 	  [--recurse-submodules[=<pathspec>]] [--[no-]shallow-submodules]
 	  [--[no-]remote-submodules] [--jobs <n>] [--sparse] [--[no-]reject-shallow]
@@ -211,7 +211,7 @@ objects from the source repository into a pack in the cloned repository.
 	via ssh, this specifies a non-default path for the command
 	run on the other end.
 
---template=<template_directory>::
+--template=<template-directory>::
 	Specify the directory from which templates will be used;
 	(See the "TEMPLATE DIRECTORY" section of linkgit:git-init[1].)
 
@@ -294,7 +294,7 @@ or `--mirror` is given)
 	superproject's recorded SHA-1. Equivalent to passing `--remote` to
 	`git submodule update`.
 
---separate-git-dir=<git dir>::
+--separate-git-dir=<git-dir>::
 	Instead of placing the cloned repository where it is supposed
 	to be, place the cloned repository at the specified directory,
 	then make a filesystem-agnostic Git symbolic link to there.
Documentation/git-cvsimport.txt +4 -4
index de1ebed67d..b3f27671a0 100644
@@ -11,9 +11,9 @@ SYNOPSIS
 [verse]
 'git cvsimport' [-o <branch-for-HEAD>] [-h] [-v] [-d <CVSROOT>]
 	      [-A <author-conv-file>] [-p <options-for-cvsps>] [-P <file>]
-	      [-C <git_repository>] [-z <fuzz>] [-i] [-k] [-u] [-s <subst>]
-	      [-a] [-m] [-M <regex>] [-S <regex>] [-L <commitlimit>]
-	      [-r <remote>] [-R] [<CVS_module>]
+	      [-C <git-repository>] [-z <fuzz>] [-i] [-k] [-u] [-s <subst>]
+	      [-a] [-m] [-M <regex>] [-S <regex>] [-L <commit-limit>]
+	      [-r <remote>] [-R] [<CVS-module>]
 
 
 DESCRIPTION
@@ -59,7 +59,7 @@ OPTIONS
 	from `CVS/Root`. If no such file exists, it checks for the
 	`CVSROOT` environment variable.
 
-<CVS_module>::
+<CVS-module>::
 	The CVS module you want to import. Relative to <CVSROOT>.
 	If not given, 'git cvsimport' tries to read it from
 	`CVS/Repository`.
Documentation/git-diff-files.txt +1 -1
index 906774f0f7..bf1febb9ae 100644
@@ -9,7 +9,7 @@ git-diff-files - Compares files in the working tree and the index
 SYNOPSIS
 --------
 [verse]
-'git diff-files' [-q] [-0|-1|-2|-3|-c|--cc] [<common diff options>] [<path>...]
+'git diff-files' [-q] [-0|-1|-2|-3|-c|--cc] [<common-diff-options>] [<path>...]
 
 DESCRIPTION
 -----------
Documentation/git-diff-index.txt +1 -1
index 27acb31cbf..679cae27d9 100644
@@ -9,7 +9,7 @@ git-diff-index - Compare a tree to the working tree or index
 SYNOPSIS
 --------
 [verse]
-'git diff-index' [-m] [--cached] [--merge-base] [<common diff options>] <tree-ish> [<path>...]
+'git diff-index' [-m] [--cached] [--merge-base] [<common-diff-options>] <tree-ish> [<path>...]
 
 DESCRIPTION
 -----------
Documentation/git-diff-tree.txt +1 -1
index 2fc24c542f..274d5eaba9 100644
@@ -11,7 +11,7 @@ SYNOPSIS
 [verse]
 'git diff-tree' [--stdin] [-m] [-s] [-v] [--no-commit-id] [--pretty]
 	      [-t] [-r] [-c | --cc] [--combined-all-paths] [--root] [--merge-base]
-	      [<common diff options>] <tree-ish> [<tree-ish>] [<path>...]
+	      [<common-diff-options>] <tree-ish> [<tree-ish>] [<path>...]
 
 DESCRIPTION
 -----------
Documentation/git-init-db.txt +1 -1
index 648a6cd78a..18bf1a3c8c 100644
@@ -9,7 +9,7 @@ git-init-db - Creates an empty Git repository
 SYNOPSIS
 --------
 [verse]
-'git init-db' [-q | --quiet] [--bare] [--template=<template_directory>] [--separate-git-dir <git dir>] [--shared[=<permissions>]]
+'git init-db' [-q | --quiet] [--bare] [--template=<template-directory>] [--separate-git-dir <git-dir>] [--shared[=<permissions>]]
 
 
 DESCRIPTION
Documentation/git-init.txt +4 -4
index 7781d0b354..fdb7b3f367 100644
@@ -9,8 +9,8 @@ git-init - Create an empty Git repository or reinitialize an existing one
 SYNOPSIS
 --------
 [verse]
-'git init' [-q | --quiet] [--bare] [--template=<template_directory>]
-	  [--separate-git-dir <git dir>] [--object-format=<format>]
+'git init' [-q | --quiet] [--bare] [--template=<template-directory>]
+	  [--separate-git-dir <git-dir>] [--object-format=<format>]
 	  [-b <branch-name> | --initial-branch=<branch-name>]
 	  [--shared[=<permissions>]] [<directory>]
 
@@ -57,12 +57,12 @@ values are 'sha1' and (if enabled) 'sha256'.  'sha1' is the default.
 +
 include::object-format-disclaimer.txt[]
 
---template=<template_directory>::
+--template=<template-directory>::
 
 Specify the directory from which templates will be used.  (See the "TEMPLATE
 DIRECTORY" section below.)
 
---separate-git-dir=<git dir>::
+--separate-git-dir=<git-dir>::
 
 Instead of initializing the repository as a directory to either `$GIT_DIR` or
 `./.git/`, create a text file there containing the path to the actual
Documentation/git-log.txt +4 -4
index 0498e7bacb..20e87cecf4 100644
@@ -9,7 +9,7 @@ git-log - Show commit logs
 SYNOPSIS
 --------
 [verse]
-'git log' [<options>] [<revision range>] [[--] <path>...]
+'git log' [<options>] [<revision-range>] [[--] <path>...]
 
 DESCRIPTION
 -----------
@@ -81,13 +81,13 @@ produced by `--stat`, etc.
 
 include::line-range-options.txt[]
 
-<revision range>::
+<revision-range>::
 	Show only commits in the specified revision range.  When no
-	<revision range> is specified, it defaults to `HEAD` (i.e. the
+	<revision-range> is specified, it defaults to `HEAD` (i.e. the
 	whole history leading to the current commit).  `origin..HEAD`
 	specifies all the commits reachable from the current commit
 	(i.e. `HEAD`), but not from `origin`. For a complete list of
-	ways to spell <revision range>, see the 'Specifying Ranges'
+	ways to spell <revision-range>, see the 'Specifying Ranges'
 	section of linkgit:gitrevisions[7].
 
 [--] <path>...::
Documentation/git-p4.txt +3 -3
index 8a6addcf72..e21fcd8f71 100644
@@ -9,10 +9,10 @@ git-p4 - Import from and submit to Perforce repositories
 SYNOPSIS
 --------
 [verse]
-'git p4 clone' [<sync options>] [<clone options>] <p4 depot path>...
-'git p4 sync' [<sync options>] [<p4 depot path>...]
+'git p4 clone' [<sync-options>] [<clone-options>] <p4-depot-path>...
+'git p4 sync' [<sync-options>] [<p4-depot-path>...]
 'git p4 rebase'
-'git p4 submit' [<submit options>] [<master branch name>]
+'git p4 submit' [<submit-options>] [<master-branch-name>]
 
 
 DESCRIPTION
Documentation/git-shortlog.txt +4 -4
index c9c7f3065c..f64e77047b 100644
@@ -8,7 +8,7 @@ git-shortlog - Summarize 'git log' output
 SYNOPSIS
 --------
 [verse]
-'git shortlog' [<options>] [<revision range>] [[--] <path>...]
+'git shortlog' [<options>] [<revision-range>] [[--] <path>...]
 git log --pretty=short | 'git shortlog' [<options>]
 
 DESCRIPTION
@@ -89,13 +89,13 @@ counts both authors and co-authors.
 If width is `0` (zero) then indent the lines of the output without wrapping
 them.
 
-<revision range>::
+<revision-range>::
 	Show only commits in the specified revision range.  When no
-	<revision range> is specified, it defaults to `HEAD` (i.e. the
+	<revision-range> is specified, it defaults to `HEAD` (i.e. the
 	whole history leading to the current commit).  `origin..HEAD`
 	specifies all the commits reachable from the current commit
 	(i.e. `HEAD`), but not from `origin`. For a complete list of
-	ways to spell <revision range>, see the "Specifying Ranges"
+	ways to spell <revision-range>, see the "Specifying Ranges"
 	section of linkgit:gitrevisions[7].
 
 [--] <path>...::
Documentation/git-svn.txt +1 -1
index 222b556d7a..4e92308e85 100644
@@ -575,7 +575,7 @@ OPTIONS
 -------
 
 --shared[=(false|true|umask|group|all|world|everybody)]::
---template=<template_directory>::
+--template=<template-directory>::
 	Only used with the 'init' command.
 	These are passed directly to 'git init'.
 
Documentation/pretty-formats.txt +27 -27

132 lines not on this page · raw message

Signature · 1 line
2.33.1
#40 lore raw

PATCH v3 5/10 doc: git-ls-files: express options as optional alternatives

In reply to Jean-Noël Avila

That's how alternative options are expressed in general.

---
 Documentation/git-ls-files.txt | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
Documentation/git-ls-files.txt +3 -3
index 6d11ab506b..2e3d695fa2 100644
@@ -10,9 +10,9 @@ SYNOPSIS
 --------
 [verse]
 'git ls-files' [-z] [-t] [-v] [-f]
-		(--[cached|deleted|others|ignored|stage|unmerged|killed|modified])*
-		(-[c|d|o|i|s|u|k|m])*
-		[--eol]
+		[-c|--cached] [-d|--deleted] [-o|--others] [-i|--|ignored]
+		[-s|--stage] [-u|--unmerged] [-k|--|killed] [-m|--modified]
+		[--directory [--no-empty-directory]] [--eol]
 		[--deduplicate]
 		[-x <pattern>|--exclude=<pattern>]
 		[-X <file>|--exclude-from=<file>]
Signature · 1 line
2.33.1
#41 lore raw

PATCH v3 6/10 doc: use three dots for indicating repetition instead of star

In reply to Jean-Noël Avila

This is how it is specified in CodingGuidelines.

---
 Documentation/git-fsck.txt        | 2 +-
 Documentation/git-merge-index.txt | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
Documentation/git-fsck.txt +1 -1
index bd596619c0..5088783dcc 100644
@@ -12,7 +12,7 @@ SYNOPSIS
 'git fsck' [--tags] [--root] [--unreachable] [--cache] [--no-reflogs]
 	 [--[no-]full] [--strict] [--verbose] [--lost-found]
 	 [--[no-]dangling] [--[no-]progress] [--connectivity-only]
-	 [--[no-]name-objects] [<object>*]
+	 [--[no-]name-objects] [<object>...]
 
 DESCRIPTION
 -----------
Documentation/git-merge-index.txt +1 -1
index 2ab84a91e5..eea56b3154 100644
@@ -9,7 +9,7 @@ git-merge-index - Run a merge for files needing merging
 SYNOPSIS
 --------
 [verse]
-'git merge-index' [-o] [-q] <merge-program> (-a | [--] <file>*)
+'git merge-index' [-o] [-q] <merge-program> (-a | ( [--] <file>...) )
 
 DESCRIPTION
 -----------
Signature · 1 line
2.33.1
#42 lore raw

PATCH v3 7/10 doc: uniformize <URL> placeholders' case

In reply to Jean-Noël Avila

URL being an acronym, it deserves to be kept uppercase.

---
 Documentation/git-http-fetch.txt   | 2 +-
 Documentation/git-http-push.txt    | 2 +-
 Documentation/git-remote.txt       | 8 ++++----
 Documentation/git-request-pull.txt | 8 ++++----
 Documentation/gitcredentials.txt   | 4 ++--
 Documentation/gitsubmodules.txt    | 2 +-
 Documentation/gitworkflows.txt     | 6 +++---
 Documentation/urls-remotes.txt     | 8 ++++----
 8 files changed, 20 insertions(+), 20 deletions(-)
Documentation/git-http-fetch.txt +1 -1
index fa4bb6cbc3..319062c021 100644
@@ -9,7 +9,7 @@ git-http-fetch - Download from a remote Git repository via HTTP
 SYNOPSIS
 --------
 [verse]
-'git http-fetch' [-c] [-t] [-a] [-d] [-v] [-w <filename>] [--recover] [--stdin | --packfile=<hash> | <commit>] <url>
+'git http-fetch' [-c] [-t] [-a] [-d] [-v] [-w <filename>] [--recover] [--stdin | --packfile=<hash> | <commit>] <URL>
 
 DESCRIPTION
 -----------
Documentation/git-http-push.txt +1 -1
index ea03a4eeb0..78f2bb7552 100644
@@ -9,7 +9,7 @@ git-http-push - Push objects over HTTP/DAV to another repository
 SYNOPSIS
 --------
 [verse]
-'git http-push' [--all] [--dry-run] [--force] [--verbose] <url> <ref> [<ref>...]
+'git http-push' [--all] [--dry-run] [--force] [--verbose] <URL> <ref> [<ref>...]
 
 DESCRIPTION
 -----------
Documentation/git-remote.txt +4 -4
index 31c29c9b31..2bebc32566 100644
@@ -10,7 +10,7 @@ SYNOPSIS
 --------
 [verse]
 'git remote' [-v | --verbose]
-'git remote add' [-t <branch>] [-m <master>] [-f] [--[no-]tags] [--mirror=(fetch|push)] <name> <url>
+'git remote add' [-t <branch>] [-m <master>] [-f] [--[no-]tags] [--mirror=(fetch|push)] <name> <URL>
 'git remote rename' <old> <new>
 'git remote remove' <name>
 'git remote set-head' <name> (-a | --auto | -d | --delete | <branch>)
@@ -18,7 +18,7 @@ SYNOPSIS
 'git remote get-url' [--push] [--all] <name>
 'git remote set-url' [--push] <name> <newurl> [<oldurl>]
 'git remote set-url --add' [--push] <name> <newurl>
-'git remote set-url --delete' [--push] <name> <url>
+'git remote set-url --delete' [--push] <name> <URL>
 'git remote' [-v | --verbose] 'show' [-n] <name>...
 'git remote prune' [-n | --dry-run] <name>...
 'git remote' [-v | --verbose] 'update' [-p | --prune] [(<group> | <remote>)...]
@@ -47,7 +47,7 @@ subcommands are available to perform operations on the remotes.
 'add'::
 
 Add a remote named <name> for the repository at
-<url>.  The command `git fetch <name>` can then be used to create and
+<URL>.  The command `git fetch <name>` can then be used to create and
 update remote-tracking branches <name>/<branch>.
 +
 With `-f` option, `git fetch <name>` is run immediately after
@@ -152,7 +152,7 @@ With `--push`, push URLs are manipulated instead of fetch URLs.
 With `--add`, instead of changing existing URLs, new URL is added.
 +
 With `--delete`, instead of changing existing URLs, all URLs matching
-regex <url> are deleted for remote <name>.  Trying to delete all
+regex <URL> are deleted for remote <name>.  Trying to delete all
 non-push URLs is an error.
 +
 Note that the push URL and the fetch URL, even though they can
Documentation/git-request-pull.txt +4 -4
index 4d4392d0f8..fa5a426709 100644
@@ -8,7 +8,7 @@ git-request-pull - Generates a summary of pending changes
 SYNOPSIS
 --------
 [verse]
-'git request-pull' [-p] <start> <url> [<end>]
+'git request-pull' [-p] <start> <URL> [<end>]
 
 DESCRIPTION
 -----------
@@ -21,7 +21,7 @@ the changes and indicates from where they can be pulled.
 The upstream project is expected to have the commit named by
 `<start>` and the output asks it to integrate the changes you made
 since that commit, up to the commit named by `<end>`, by visiting
-the repository named by `<url>`.
+the repository named by `<URL>`.
 
 
 OPTIONS
@@ -33,14 +33,14 @@ OPTIONS
 	Commit to start at.  This names a commit that is already in
 	the upstream history.
 
-<url>::
+<URL>::
 	The repository URL to be pulled from.
 
 <end>::
 	Commit to end at (defaults to HEAD).  This names the commit
 	at the tip of the history you are asking to be pulled.
 +
-When the repository named by `<url>` has the commit at a tip of a
+When the repository named by `<URL>` has the commit at a tip of a
 ref that is different from the ref you have locally, you can use the
 `<local>:<remote>` syntax, to have its local name, a colon `:`, and
 its remote name.
Documentation/gitcredentials.txt +2 -2
index 758bf39ba3..80517b4eb2 100644
@@ -132,7 +132,7 @@ because the hostnames differ. Nor would it match `foo.example.com`; Git
 compares hostnames exactly, without considering whether two hosts are part of
 the same domain. Likewise, a config entry for `http://example.com` would not
 match: Git compares the protocols exactly.  However, you may use wildcards in
-the domain name and other pattern matching techniques as with the `http.<url>.*`
+the domain name and other pattern matching techniques as with the `http.<URL>.*`
 options.
 
 If the "pattern" URL does include a path component, then this too must match
@@ -147,7 +147,7 @@ CONFIGURATION OPTIONS
 
 Options for a credential context can be configured either in
 `credential.*` (which applies to all credentials), or
-`credential.<url>.*`, where <url> matches the context as described
+`credential.<URL>.*`, where <URL> matches the context as described
 above.
 
 The following options are available in either location:
Documentation/gitsubmodules.txt +1 -1
index 891c8da4fd..941858a6ec 100644
@@ -226,7 +226,7 @@ Workflow for a third party library
 ----------------------------------
 
   # Add a submodule
-  git submodule add <url> <path>
+  git submodule add <URL> <path>
 
   # Occasionally update the submodule to a new version:
   git -C <path> checkout <new version>
Documentation/gitworkflows.txt +3 -3
index 47cf97f9be..59305265c5 100644
@@ -394,7 +394,7 @@ request to do so by mail.  Such a request looks like
 
 -------------------------------------
 Please pull from
-    <url> <branch>
+    <URL> <branch>
 -------------------------------------
 
 In that case, 'git pull' can do the fetch and merge in one go, as
@@ -403,7 +403,7 @@ follows.
 .Push/pull: Merging remote topics
 [caption="Recipe: "]
 =====================================
-`git pull <url> <branch>`
+`git pull <URL> <branch>`
 =====================================
 
 Occasionally, the maintainer may get merge conflicts when they try to
@@ -440,7 +440,7 @@ merge because you cannot format-patch merges):
 .format-patch/am: Keeping topics up to date
 [caption="Recipe: "]
 =====================================
-`git pull --rebase <url> <branch>`
+`git pull --rebase <URL> <branch>`
 =====================================
 
 You can then fix the conflicts during the rebase.  Presumably you have
Documentation/urls-remotes.txt +4 -4
index bd184cd653..86d0008f94 100644
@@ -26,14 +26,14 @@ config file would appear like this:
 
 ------------
 	[remote "<name>"]
-		url = <url>
+		url = <URL>
 		pushurl = <pushurl>
 		push = <refspec>
 		fetch = <refspec>
 ------------
 
 The `<pushurl>` is used for pushes only. It is optional and defaults
-to `<url>`.
+to `<URL>`.
 
 Named file in `$GIT_DIR/remotes`
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -67,10 +67,10 @@ This file should have the following format:
 
 
 ------------
-	<url>#<head>
+	<URL>#<head>
 ------------
 
-`<url>` is required; `#<head>` is optional.
+`<URL>` is required; `#<head>` is optional.
 
 Depending on the operation, git will use one of the following
 refspecs, if you don't provide one on the command line.
Signature · 1 line
2.33.1
#43 lore raw

PATCH v3 8/10 doc: git-http-push: describe the refs as pattern pairs

In reply to Jean-Noël Avila

Each member of the pair is explained but they are not defined beforehand.

---
 Documentation/git-http-push.txt | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)
Documentation/git-http-push.txt +6 -7
index 78f2bb7552..7c6a6dd7f6 100644
@@ -63,16 +63,15 @@ of such patterns separated by a colon ":" (this means that a ref name
 cannot have a colon in it).  A single pattern '<name>' is just a
 shorthand for '<name>:<name>'.
 
-Each pattern pair consists of the source side (before the colon)
-and the destination side (after the colon).  The ref to be
-pushed is determined by finding a match that matches the source
-side, and where it is pushed is determined by using the
-destination side.
+Each pattern pair '<src>:<dst>' consists of the source side (before
+the colon) and the destination side (after the colon).  The ref to be
+pushed is determined by finding a match that matches the source side,
+and where it is pushed is determined by using the destination side.
 
- - It is an error if <src> does not match exactly one of the
+ - It is an error if '<src>' does not match exactly one of the
    local refs.
 
- - If <dst> does not match any remote ref, either
+ - If '<dst>' does not match any remote ref, either
 
    * it has to start with "refs/"; <dst> is used as the
      destination literally in this case.
Signature · 1 line
2.33.1
#44 lore raw

PATCH v3 9/10 doc: git-init: clarify file modes in octal.

In reply to Jean-Noël Avila

The previous explanation was mixing the format with the identity of the field.

---
 Documentation/git-init.txt | 16 +++++++++-------
 1 file changed, 9 insertions(+), 7 deletions(-)
Documentation/git-init.txt +9 -7
index fdb7b3f367..af0d2ee182 100644
@@ -79,7 +79,7 @@ repository.  If not specified, fall back to the default name (currently
 `master`, but this is subject to change in the future; the name can be
 customized via the `init.defaultBranch` configuration variable).
 
---shared[=(false|true|umask|group|all|world|everybody|0xxx)]::
+--shared[=(false|true|umask|group|all|world|everybody|<umask>)]::
 
 Specify that the Git repository is to be shared amongst several users.  This
 allows users belonging to the same group to push into that
@@ -110,13 +110,15 @@ the repository permissions.
 
 Same as 'group', but make the repository readable by all users.
 
-'0xxx'::
+'<umask>'::
 
-'0xxx' is an octal number and each file will have mode '0xxx'. '0xxx' will
-override users' umask(2) value (and not only loosen permissions as 'group' and
-'all' does). '0640' will create a repository which is group-readable, but not
-group-writable or accessible to others. '0660' will create a repo that is
-readable and writable to the current user and group, but inaccessible to others.
+'<umask>' is an 3-digit octal number prefixed with `0` and each file
+will have mode '<umask>'. '<umask>' will override users' umask(2)
+value (and not only loosen permissions as 'group' and 'all'
+does). '0640' will create a repository which is group-readable, but
+not group-writable or accessible to others. '0660' will create a repo
+that is readable and writable to the current user and group, but
+inaccessible to others.
 --
 
 By default, the configuration flag `receive.denyNonFastForwards` is enabled
Signature · 1 line
2.33.1
#45 lore raw

Re: [PATCH v3 09/10] doc: git-init: clarify file modes in octal.

Documentation/git-init.txt the repository permissions. · line 115

Quoted 3 lines · Jean-Noël Avila
Documentation/git-init.txt +1 -1
-'0xxx' is an octal number and each file will have mode '0xxx'. '0xxx' will
+'<umask>' is an 3-digit octal number prefixed with `0` and each file

"an 3-digit" should be "a 3-digit"

#46 lore raw

PATCH v3 10/10 init doc: --shared=0xxx does not give umask but perm bits

In reply to Jean-Noël Avila

From: Junio C Hamano <[email protected]>

The description that 0640 makes sure that the group members can read the repository is correct, but calling that octal number a <umask> is wrong. Let's call it <perm>, as the value is used to set the permission bits.

---
 Documentation/git-init.txt | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)
Documentation/git-init.txt +6 -5
index af0d2ee182..42268ada22 100644
@@ -79,7 +79,7 @@ repository.  If not specified, fall back to the default name (currently
 `master`, but this is subject to change in the future; the name can be
 customized via the `init.defaultBranch` configuration variable).
 
---shared[=(false|true|umask|group|all|world|everybody|<umask>)]::
+--shared[=(false|true|umask|group|all|world|everybody|<perm>)]::
 
 Specify that the Git repository is to be shared amongst several users.  This
 allows users belonging to the same group to push into that
@@ -110,15 +110,16 @@ the repository permissions.
 
 Same as 'group', but make the repository readable by all users.
 
-'<umask>'::
+'<perm>'::
 
-'<umask>' is an 3-digit octal number prefixed with `0` and each file
-will have mode '<umask>'. '<umask>' will override users' umask(2)
+'<perm>' is an 3-digit octal number prefixed with `0` and each file
+will have mode '<perm>'. '<perm>' will override users' umask(2)
 value (and not only loosen permissions as 'group' and 'all'
 does). '0640' will create a repository which is group-readable, but
 not group-writable or accessible to others. '0660' will create a repo
 that is readable and writable to the current user and group, but
-inaccessible to others.
+inaccessible to others (directories and executable files get their
+`x` bit from the `r` bit for corresponding classes of uses).
 --
 
 By default, the configuration flag `receive.denyNonFastForwards` is enabled
Signature · 1 line
2.33.1
#47 lore raw

Re: [PATCH v3 10/10] init doc: --shared=0xxx does not give umask but perm bits

Quoted 33 lines · Jean-Noël Avila

From: Junio C Hamano <[email protected]>

The description that 0640 makes sure that the group members can read the repository is correct, but calling that octal number a <umask> is wrong. Let's call it <perm>, as the value is used to set the permission bits.

---
 Documentation/git-init.txt | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)
Documentation/git-init.txt +2 -3
index af0d2ee182..42268ada22 100644
@@ -79,7 +79,7 @@ repository.  If not specified, fall back to the default name (currently
 `master`, but this is subject to change in the future; the name can be
 customized via the `init.defaultBranch` configuration variable).
 
---shared[=(false|true|umask|group|all|world|everybody|<umask>)]::
+--shared[=(false|true|umask|group|all|world|everybody|<perm>)]::
 
 Specify that the Git repository is to be shared amongst several users.  This
 allows users belonging to the same group to push into that
@@ -110,15 +110,16 @@ the repository permissions.
 
 Same as 'group', but make the repository readable by all users.
 
-'<umask>'::
+'<perm>'::
 
-'<umask>' is an 3-digit octal number prefixed with `0` and each file

Documentation/git-init.txt the repository permissions. · line 122

Quoted 10 lines
Documentation/git-init.txt +4 -2
-will have mode '<umask>'. '<umask>' will override users' umask(2)
+'<perm>' is an 3-digit octal number prefixed with `0` and each file
+will have mode '<perm>'. '<perm>' will override users' umask(2)
 value (and not only loosen permissions as 'group' and 'all'
 does). '0640' will create a repository which is group-readable, but
 not group-writable or accessible to others. '0660' will create a repo
 that is readable and writable to the current user and group, but
-inaccessible to others.
+inaccessible to others (directories and executable files get their
+`x` bit from the `r` bit for corresponding classes of uses).

This confused me until I realized that "classes of uses" should be "classes of users".

Other than that the whole series looks great.

#48 lore raw

Re: [PATCH v3 10/10] init doc: --shared=0xxx does not give umask but perm bits

Quoted 7 lines · Johannes Altmanninger

Documentation/git-init.txt the repository permissions. · line 122

Quoted 3 lines
Documentation/git-init.txt +2 -1
-inaccessible to others.
+inaccessible to others (directories and executable files get their
+`x` bit from the `r` bit for corresponding classes of uses).

This confused me until I realized that "classes of uses" should be "classes of users".

Other than that the whole series looks great.

You spotted two typos, if I count correctly? I didn't see anything questionable in the rest, so let me queue the patches with your typofixes.

Thanks, both.