Git fork

Merge branch 'ja/doc-lint-sections-and-synopsis'

Doc lint updates to encourage the newer and easier-to-use
`synopsis` format, with fixes to a handful of existing uses.

* ja/doc-lint-sections-and-synopsis:
doc lint: check that synopsis manpages have synopsis inlines
doc:git-for-each-ref: fix styling and typos
doc: check for absence of the form --[no-]parameter
doc: check for absence of multiple terms in each entry of desc list
doc: check well-formedness of delimited sections
doc: test linkgit macros for well-formedness

+448 -233
+20 -1
Documentation/Makefile
··· 497 497 $(call mkdir_p_parent_template) 498 498 $(QUIET_GEN)$(PERL_PATH) lint-fsck-msgids.perl \ 499 499 ../fsck.h fsck-msgids.adoc $@ 500 + lint-docs-fsck-msgids: $(LINT_DOCS_FSCK_MSGIDS) 501 + 502 + ## Lint: delimited sections 503 + LINT_DOCS_DELIMITED_SECTIONS = $(patsubst %.adoc,.build/lint-docs/delimited-sections/%.ok,$(MAN_TXT)) 504 + $(LINT_DOCS_DELIMITED_SECTIONS): lint-delimited-sections.perl 505 + $(LINT_DOCS_DELIMITED_SECTIONS): .build/lint-docs/delimited-sections/%.ok: %.adoc 506 + $(call mkdir_p_parent_template) 507 + $(QUIET_LINT_DELIMSEC)$(PERL_PATH) lint-delimited-sections.perl $< >$@ 508 + .PHONY: lint-docs-delimited-sections 509 + lint-docs-delimited-sections: $(LINT_DOCS_DELIMITED_SECTIONS) 500 510 501 - lint-docs-fsck-msgids: $(LINT_DOCS_FSCK_MSGIDS) 511 + ## Lint: Documentation style 512 + LINT_DOCS_DOC_STYLE = $(patsubst %.adoc,.build/lint-docs/doc-style/%.ok,$(DOC_DEP_TXT)) 513 + $(LINT_DOCS_DOC_STYLE): lint-documentation-style.perl 514 + $(LINT_DOCS_DOC_STYLE): .build/lint-docs/doc-style/%.ok: %.adoc 515 + $(call mkdir_p_parent_template) 516 + $(QUIET_LINT_DOCSTYLE)$(PERL_PATH) lint-documentation-style.perl $< >$@ 517 + .PHONY: lint-docs-doc-style 518 + lint-docs-doc-style: $(LINT_DOCS_DOC_STYLE) 502 519 503 520 lint-docs-manpages: 504 521 $(QUIET_GEN)./lint-manpages.sh ··· 528 545 lint-docs: lint-docs-gitlink 529 546 lint-docs: lint-docs-man-end-blurb 530 547 lint-docs: lint-docs-man-section-order 548 + lint-docs: lint-docs-delimited-sections 549 + lint-docs: lint-docs-doc-style 531 550 lint-docs: lint-docs-manpages 532 551 lint-docs: lint-docs-meson 533 552
+1
Documentation/RelNotes/1.6.2.4.adoc
··· 37 37 echo O=$(git describe maint) 38 38 O=v1.6.2.3-38-g318b847 39 39 git shortlog --no-merges $O..maint 40 + ---
+2 -1
Documentation/blame-options.adoc
··· 75 75 iso format is used. For supported values, see the discussion 76 76 of the --date option at linkgit:git-log[1]. 77 77 78 - --[no-]progress:: 78 + --progress:: 79 + --no-progress:: 79 80 Progress status is reported on the standard error stream 80 81 by default when it is attached to a terminal. This flag 81 82 enables progress reporting even if not attached to a
+1
Documentation/diff-format.adoc
··· 103 103 followed by the name of the path in the merge commit. 104 104 105 105 Examples for `-c` and `--cc` without `--combined-all-paths`: 106 + 106 107 ------------------------------------------------ 107 108 ::100644 100644 100644 fabadb8 cc95eb0 4866510 MM desc.c 108 109 ::100755 100755 100755 52b7a2d 6d1ac04 d2ac7d7 RM bar.sh
+2 -1
Documentation/diff-options.adoc
··· 505 505 Turn off rename detection, even when the configuration 506 506 file gives the default to do so. 507 507 508 - `--[no-]rename-empty`:: 508 + `--rename-empty`:: 509 + `--no-rename-empty`:: 509 510 Whether to use empty blobs as rename source. 510 511 511 512 ifndef::git-format-patch[]
+10 -5
Documentation/fetch-options.adoc
··· 1 - --[no-]all:: 1 + --all:: 2 + --no-all:: 2 3 Fetch all remotes, except for the ones that has the 3 4 `remote.<name>.skipFetchAll` configuration variable set. 4 5 This overrides the configuration variable fetch.all`. ··· 88 89 precedence over the `fetch.output` config option. 89 90 90 91 ifndef::git-pull[] 91 - --[no-]write-fetch-head:: 92 + --write-fetch-head:: 93 + --no-write-fetch-head:: 92 94 Write the list of remote refs fetched in the `FETCH_HEAD` 93 95 file directly under `$GIT_DIR`. This is the default. 94 96 Passing `--no-write-fetch-head` from the command line tells ··· 118 120 Allow several <repository> and <group> arguments to be 119 121 specified. No <refspec>s may be specified. 120 122 121 - --[no-]auto-maintenance:: 122 - --[no-]auto-gc:: 123 + --auto-maintenance:: 124 + --no-auto-maintenance:: 125 + --auto-gc:: 126 + --no-auto-gc:: 123 127 Run `git maintenance run --auto` at the end to perform automatic 124 128 repository maintenance if needed. (`--[no-]auto-gc` is a synonym.) 125 129 This is enabled by default. 126 130 127 - --[no-]write-commit-graph:: 131 + --write-commit-graph:: 132 + --no-write-commit-graph:: 128 133 Write a commit-graph after fetching. This overrides the config 129 134 setting `fetch.writeCommitGraph`. 130 135 endif::git-pull[]
+41 -44
Documentation/for-each-ref-options.adoc
··· 1 - <pattern>...:: 2 - If one or more patterns are given, only refs are shown that 3 - match against at least one pattern, either using fnmatch(3) or 1 + `<pattern>...`:: 2 + If one or more _<pattern>_ parameters are given, only refs are shown that 3 + match against at least one pattern, either using `fnmatch`(3) or 4 4 literally, in the latter case matching completely or from the 5 5 beginning up to a slash. 6 6 7 - --stdin:: 8 - If `--stdin` is supplied, then the list of patterns is read from 9 - standard input instead of from the argument list. 7 + `--stdin`:: 8 + The list of patterns is read from standard input instead of from 9 + the argument list. 10 10 11 - --count=<count>:: 12 - By default the command shows all refs that match 13 - `<pattern>`. This option makes it stop after showing 14 - that many refs. 11 + `--count=<count>`:: 12 + Stop after showing _<count>_ refs. 15 13 16 - --sort=<key>:: 17 - A field name to sort on. Prefix `-` to sort in 14 + `--sort=<key>`:: 15 + Sort on the field name _<key>_. Prefix `-` to sort in 18 16 descending order of the value. When unspecified, 19 - `refname` is used. You may use the --sort=<key> option 17 + `refname` is used. You may use the `--sort=<key>` option 20 18 multiple times, in which case the last key becomes the primary 21 19 key. 22 20 23 - --format=<format>:: 21 + `--format[=<format>]`:: 24 22 A string that interpolates `%(fieldname)` from a ref being shown and 25 23 the object it points at. In addition, the string literal `%%` 26 24 renders as `%` and `%xx` - where `xx` are hex digits - renders as 27 25 the character with hex code `xx`. For example, `%00` interpolates to 28 - `\0` (NUL), `%09` to `\t` (TAB), and `%0a` to `\n` (LF). 29 - + 30 - When unspecified, `<format>` defaults to `%(objectname) SPC %(objecttype) 26 + `\0` (_NUL_), `%09` to `\t` (_TAB_), and `%0a` to `\n` (_LF_). 27 + 28 + When unspecified, _<format>_ defaults to `%(objectname) SPC %(objecttype) 31 29 TAB %(refname)`. 32 30 33 - --color[=<when>]:: 31 + `--color[=<when>]`:: 34 32 Respect any colors specified in the `--format` option. The 35 - `<when>` field must be one of `always`, `never`, or `auto` (if 33 + _<when__ field must be one of `always`, `never`, or `auto` (if 36 34 `<when>` is absent, behave as if `always` was given). 37 35 38 - --shell:: 39 - --perl:: 40 - --python:: 41 - --tcl:: 36 + `--shell`:: 37 + `--perl`:: 38 + `--python`:: 39 + `--tcl`:: 42 40 If given, strings that substitute `%(fieldname)` 43 41 placeholders are quoted as string literals suitable for 44 42 the specified host language. This is meant to produce 45 - a scriptlet that can directly be `eval`ed. 43 + a scriptlet that can directly be "eval"ed. 46 44 47 - --points-at=<object>:: 45 + `--points-at=<object>`:: 48 46 Only list refs which points at the given object. 49 47 50 - --merged[=<object>]:: 48 + `--merged[=<object>]`:: 51 49 Only list refs whose tips are reachable from the 52 - specified commit (HEAD if not specified). 50 + specified commit (`HEAD` if not specified). 53 51 54 - --no-merged[=<object>]:: 55 - Only list refs whose tips are not reachable from the 56 - specified commit (HEAD if not specified). 57 - 58 - --contains[=<object>]:: 59 - Only list refs which contain the specified commit (HEAD if not 52 + `--no-merged[=<object>]`:: 53 + Only list refs whose tips are not reachable from _<object>_(`HEAD` if not 60 54 specified). 61 55 62 - --no-contains[=<object>]:: 63 - Only list refs which don't contain the specified commit (HEAD 56 + `--contains[=<object>]`:: 57 + Only list refs which contain _<object>_(`HEAD` if not specified). 58 + 59 + `--no-contains[=<object>]`:: 60 + Only list refs which don't contain _<object>_ (`HEAD` 64 61 if not specified). 65 62 66 - --ignore-case:: 63 + `--ignore-case`:: 67 64 Sorting and filtering refs are case insensitive. 68 65 69 - --omit-empty:: 66 + `--omit-empty`:: 70 67 Do not print a newline after formatted refs where the format expands 71 68 to the empty string. 72 69 73 - --exclude=<pattern>:: 74 - If one or more patterns are given, only refs which do not match 75 - any excluded pattern(s) are shown. Matching is done using the 76 - same rules as `<pattern>` above. 70 + `--exclude=<excluded-pattern>`:: 71 + If one or more `--exclude` options are given, only refs which do not 72 + match any _<excluded-pattern>_ parameters are shown. Matching is done 73 + using the same rules as _<pattern>_ above. 77 74 78 - --include-root-refs:: 79 - List root refs (HEAD and pseudorefs) apart from regular refs. 75 + `--include-root-refs`:: 76 + List root refs (`HEAD` and pseudorefs) apart from regular refs. 80 77 81 - --start-after=<marker>:: 78 + `--start-after=<marker>`:: 82 79 Allows paginating the output by skipping references up to and including the 83 80 specified marker. When paging, it should be noted that references may be 84 81 deleted, modified or added between invocations. Output will only yield those
+2 -1
Documentation/git-am.adoc
··· 48 48 --keep-non-patch:: 49 49 Pass `-b` flag to 'git mailinfo' (see linkgit:git-mailinfo[1]). 50 50 51 - --[no-]keep-cr:: 51 + --keep-cr:: 52 + --no-keep-cr:: 52 53 With `--keep-cr`, call 'git mailsplit' (see linkgit:git-mailsplit[1]) 53 54 with the same option, to prevent it from stripping CR at the end of 54 55 lines. `am.keepcr` configuration variable can be used to specify the
+2 -1
Documentation/git-backfill.adoc
··· 57 57 blobs seen at a given path. The default minimum batch size is 58 58 50,000. 59 59 60 - `--[no-]sparse`:: 60 + `--sparse`:: 61 + `--no-sparse`:: 61 62 Only download objects if they appear at a path that matches the 62 63 current sparse-checkout. If the sparse-checkout feature is enabled, 63 64 then `--sparse` is assumed and can be disabled with `--no-sparse`.
+4 -2
Documentation/git-cat-file.adoc
··· 62 62 or to ask for a "blob" with `<object>` being a tag object that 63 63 points at it. 64 64 65 - --[no-]mailmap:: 66 - --[no-]use-mailmap:: 65 + --mailmap:: 66 + --no-mailmap:: 67 + --use-mailmap:: 68 + --no-use-mailmap:: 67 69 Use mailmap file to map author, committer and tagger names 68 70 and email addresses to canonical real names and email addresses. 69 71 See linkgit:git-shortlog[1].
+2 -1
Documentation/git-check-attr.adoc
··· 19 19 20 20 OPTIONS 21 21 ------- 22 - -a, --all:: 22 + -a:: 23 + --all:: 23 24 List all attributes that are associated with the specified 24 25 paths. If this option is used, then 'unspecified' attributes 25 26 will not be included in the output.
+6 -3
Documentation/git-check-ignore.adoc
··· 25 25 26 26 OPTIONS 27 27 ------- 28 - -q, --quiet:: 28 + -q:: 29 + --quiet:: 29 30 Don't output anything, just set exit status. This is only 30 31 valid with a single pathname. 31 32 32 - -v, --verbose:: 33 + -v:: 34 + --verbose:: 33 35 Instead of printing the paths that are excluded, for each path 34 36 that matches an exclude pattern, print the exclude pattern 35 37 together with the path. (Matching an exclude pattern usually ··· 49 51 below). If `--stdin` is also given, input paths are separated 50 52 with a NUL character instead of a linefeed character. 51 53 52 - -n, --non-matching:: 54 + -n:: 55 + --non-matching:: 53 56 Show given paths which don't match any pattern. This only 54 57 makes sense when `--verbose` is enabled, otherwise it would 55 58 not be possible to distinguish between paths which match a
+2 -1
Documentation/git-check-ref-format.adoc
··· 98 98 99 99 OPTIONS 100 100 ------- 101 - --[no-]allow-onelevel:: 101 + --allow-onelevel:: 102 + --no-allow-onelevel:: 102 103 Controls whether one-level refnames are accepted (i.e., 103 104 refnames that do not contain multiple `/`-separated 104 105 components). The default is `--no-allow-onelevel`.
+1 -1
Documentation/git-checkout.adoc
··· 334 334 separated with _NUL_ character and all other characters are taken 335 335 literally (including newlines and quotes). 336 336 337 - <branch>:: 337 + `<branch>`:: 338 338 Branch to checkout; if it refers to a branch (i.e., a name that, 339 339 when prepended with "refs/heads/", is a valid ref), then that 340 340 branch is checked out. Otherwise, if it refers to a valid
+8 -4
Documentation/git-clone.adoc
··· 272 272 reachable from a specified remote branch or tag. This option 273 273 can be specified multiple times. 274 274 275 - `--[no-]single-branch`:: 275 + `--single-branch`:: 276 + `--no-single-branch`:: 276 277 Clone only the history leading to the tip of a single branch, 277 278 either specified by the `--branch` option or the primary 278 279 branch remote's `HEAD` points at. ··· 282 283 branch when `--single-branch` clone was made, no remote-tracking 283 284 branch is created. 284 285 285 - `--[no-]tags`:: 286 + `--tags`:: 287 + `--no-tags`:: 286 288 Control whether or not tags will be cloned. When `--no-tags` is 287 289 given, the option will be become permanent by setting the 288 290 `remote.<remote>.tagOpt=--no-tags` configuration. This ensures that ··· 313 315 not have a worktree/checkout (i.e. if any of `--no-checkout`/`-n`, `--bare`, 314 316 or `--mirror` is given) 315 317 316 - `--[no-]shallow-submodules`:: 318 + `--shallow-submodules`:: 319 + `--no-shallow-submodules`:: 317 320 All submodules which are cloned will be shallow with a depth of 1. 318 321 319 - `--[no-]remote-submodules`:: 322 + `--remote-submodules`:: 323 + `--no-remote-submodules`:: 320 324 All submodules which are cloned will use the status of the submodule's 321 325 remote-tracking branch to update the submodule, rather than the 322 326 superproject's recorded SHA-1. Equivalent to passing `--remote` to
+2 -1
Documentation/git-commit-graph.adoc
··· 34 34 object directory, `git commit-graph ...` will exit with non-zero 35 35 status. 36 36 37 - --[no-]progress:: 37 + --progress:: 38 + --no-progress:: 38 39 Turn progress on/off explicitly. If neither is specified, progress is 39 40 shown if standard error is connected to a terminal. 40 41
+3 -1
Documentation/git-commit.adoc
··· 214 214 each trailer would appear, and other details. 215 215 216 216 `-n`:: 217 - `--[no-]verify`:: 217 + `--verify`:: 218 + `--no-verify`:: 218 219 Bypass the `pre-commit` and `commit-msg` hooks. 219 220 See also linkgit:githooks[5]. 220 221 ··· 281 282 + 282 283 -- 283 284 It is a rough equivalent for: 285 + 284 286 ------ 285 287 $ git reset --soft HEAD^ 286 288 $ ... do something else to come up with the right tree ...
+2 -1
Documentation/git-config.adoc
··· 295 295 When the color setting for `name` is undefined, the command uses 296 296 `color.ui` as fallback. 297 297 298 - --[no-]includes:: 298 + --includes:: 299 + --no-includes:: 299 300 Respect `include.*` directives in config files when looking up 300 301 values. Defaults to `off` when a specific file is given (e.g., 301 302 using `--file`, `--global`, etc) and `on` when searching all
+6 -3
Documentation/git-difftool.adoc
··· 77 77 --tool-help:: 78 78 Print a list of diff tools that may be used with `--tool`. 79 79 80 - --[no-]symlinks:: 80 + --symlinks:: 81 + --no-symlinks:: 81 82 'git difftool''s default behavior is to create symlinks to the 82 83 working tree when run in `--dir-diff` mode and the right-hand 83 84 side of the comparison yields the same content as the file in ··· 94 95 Additionally, `$BASE` is set in the environment. 95 96 96 97 -g:: 97 - --[no-]gui:: 98 + --gui:: 99 + --no-gui:: 98 100 When 'git-difftool' is invoked with the `-g` or `--gui` option 99 101 the default diff tool will be read from the configured 100 102 `diff.guitool` variable instead of `diff.tool`. This may be ··· 104 106 fallback in the order of `merge.guitool`, `diff.tool`, 105 107 `merge.tool` until a tool is found. 106 108 107 - --[no-]trust-exit-code:: 109 + --trust-exit-code:: 110 + --no-trust-exit-code:: 108 111 Errors reported by the diff tool are ignored by default. 109 112 Use `--trust-exit-code` to make 'git-difftool' exit when an 110 113 invoked diff tool returns a non-zero exit code.
+4 -1
Documentation/git-fast-import.adoc
··· 111 111 Like --import-marks but instead of erroring out, silently 112 112 skips the file if it does not exist. 113 113 114 - --[no-]relative-marks:: 114 + --relative-marks:: 115 + --no-relative-marks:: 115 116 After specifying --relative-marks the paths specified 116 117 with --import-marks= and --export-marks= are relative 117 118 to an internal directory in the current repository. ··· 605 606 606 607 The special case of restarting an incremental import from the 607 608 current branch value should be written as: 609 + 608 610 ---- 609 611 from refs/heads/branch^0 610 612 ---- 613 + 611 614 The `^0` suffix is necessary as fast-import does not permit a branch to 612 615 start from itself, and the branch is created in memory before the 613 616 `from` command is even read from the input. Adding `^0` will force
+2 -1
Documentation/git-fmt-merge-msg.adoc
··· 35 35 Do not list one-line descriptions from the actual commits being 36 36 merged. 37 37 38 - --[no-]summary:: 38 + --summary:: 39 + --no-summary:: 39 40 Synonyms to --log and --no-log; these are deprecated and will be 40 41 removed in the future. 41 42
+90 -87
Documentation/git-for-each-ref.adoc
··· 14 14 [--merged[=<object>]] [--no-merged[=<object>]] 15 15 [--contains[=<object>]] [--no-contains[=<object>]] 16 16 [(--exclude=<pattern>)...] [--start-after=<marker>] 17 - [ --stdin | <pattern>... ] 17 + [ --stdin | (<pattern>...)] 18 18 19 19 DESCRIPTION 20 20 ----------- 21 21 22 - Iterate over all refs that match `<pattern>` and show them 23 - according to the given `<format>`, after sorting them according 24 - to the given set of `<key>`. If `<count>` is given, stop after 25 - showing that many refs. The interpolated values in `<format>` 22 + Iterate over all refs that match _<pattern>_ and show them 23 + according to the given _<format>_, after sorting them according 24 + to the given set of _<key>_. If _<count>_ is given, stop after 25 + showing that many refs. The interpolated values in _<format>_ 26 26 can optionally be quoted as string literals in the specified 27 27 host language allowing their direct evaluation in that language. 28 28 ··· 39 39 40 40 For all objects, the following names can be used: 41 41 42 - refname:: 43 - The name of the ref (the part after $GIT_DIR/). 42 + `refname`:: 43 + The name of the ref (the part after `$GIT_DIR/`). 44 44 For a non-ambiguous short name of the ref append `:short`. 45 - The option core.warnAmbiguousRefs is used to select the strict 46 - abbreviation mode. If `lstrip=<N>` (`rstrip=<N>`) is appended, strips `<N>` 45 + The option `core.warnAmbiguousRefs` is used to select the strict 46 + abbreviation mode. If `lstrip=<n>` (`rstrip=<n>`) is appended, strip _<n>_ 47 47 slash-separated path components from the front (back) of the refname 48 48 (e.g. `%(refname:lstrip=2)` turns `refs/tags/foo` into `foo` and 49 49 `%(refname:rstrip=2)` turns `refs/tags/foo` into `refs`). 50 - If `<N>` is a negative number, strip as many path components as 51 - necessary from the specified end to leave `-<N>` path components 50 + If _<n>_ is a negative number, strip as many path components as 51 + necessary from the specified end to leave `-<n>` path components 52 52 (e.g. `%(refname:lstrip=-2)` turns 53 53 `refs/tags/foo` into `tags/foo` and `%(refname:rstrip=-1)` 54 54 turns `refs/tags/foo` into `refs`). When the ref does not have 55 55 enough components, the result becomes an empty string if 56 - stripping with positive <N>, or it becomes the full refname if 57 - stripping with negative <N>. Neither is an error. 56 + stripping with positive _<n>_, or it becomes the full refname if 57 + stripping with negative _<N>_. Neither is an error. 58 58 + 59 59 `strip` can be used as a synonym to `lstrip`. 60 60 61 - objecttype:: 61 + `objecttype`:: 62 62 The type of the object (`blob`, `tree`, `commit`, `tag`). 63 63 64 - objectsize:: 64 + `objectsize`:: 65 65 The size of the object (the same as 'git cat-file -s' reports). 66 66 Append `:disk` to get the size, in bytes, that the object takes up on 67 - disk. See the note about on-disk sizes in the `CAVEATS` section below. 68 - objectname:: 67 + disk. See the note about on-disk sizes in the 'CAVEATS' section below. 68 + `objectname`:: 69 69 The object name (aka SHA-1). 70 70 For a non-ambiguous abbreviation of the object name append `:short`. 71 71 For an abbreviation of the object name with desired length append 72 - `:short=<length>`, where the minimum length is MINIMUM_ABBREV. The 72 + `:short=<length>`, where the minimum length is `MINIMUM_ABBREV`. The 73 73 length may be exceeded to ensure unique object names. 74 - deltabase:: 74 + `deltabase`:: 75 75 This expands to the object name of the delta base for the 76 76 given object, if it is stored as a delta. Otherwise it 77 77 expands to the null object name (all zeroes). 78 78 79 - upstream:: 79 + `upstream`:: 80 80 The name of a local ref which can be considered ``upstream'' 81 81 from the displayed ref. Respects `:short`, `:lstrip` and 82 82 `:rstrip` in the same way as `refname` above. Additionally ··· 98 98 with it. All the options apart from `nobracket` are mutually exclusive, 99 99 but if used together the last option is selected. 100 100 101 - push:: 101 + `push`:: 102 102 The name of a local ref which represents the `@{push}` 103 103 location for the displayed ref. Respects `:short`, `:lstrip`, 104 104 `:rstrip`, `:track`, `:trackshort`, `:remotename`, and `:remoteref` 105 105 options as `upstream` does. Produces an empty string if no `@{push}` 106 106 ref is configured. 107 107 108 - HEAD:: 109 - '*' if HEAD matches current ref (the checked out branch), ' ' 108 + `HEAD`:: 109 + `*` if `HEAD` matches current ref (the checked out branch), ' ' 110 110 otherwise. 111 111 112 - color:: 112 + `color`:: 113 113 Change output color. Followed by `:<colorname>`, where color 114 114 names are described under Values in the "CONFIGURATION FILE" 115 115 section of linkgit:git-config[1]. For example, 116 116 `%(color:bold red)`. 117 117 118 - align:: 118 + `align`:: 119 119 Left-, middle-, or right-align the content between 120 - %(align:...) and %(end). The "align:" is followed by 120 + `%(align:...)` and `%(end)`. The "`align:`" is followed by 121 121 `width=<width>` and `position=<position>` in any order 122 - separated by a comma, where the `<position>` is either left, 123 - right or middle, default being left and `<width>` is the total 122 + separated by a comma, where the _<position>_ is either `left`, 123 + `right` or `middle`, default being `left` and _<width>_ is the total 124 124 length of the content with alignment. For brevity, the 125 125 "width=" and/or "position=" prefixes may be omitted, and bare 126 - <width> and <position> used instead. For instance, 126 + _<width>_ and _<position>_ used instead. For instance, 127 127 `%(align:<width>,<position>)`. If the contents length is more 128 128 than the width then no alignment is performed. If used with 129 - `--quote` everything in between %(align:...) and %(end) is 129 + `--quote` everything in between `%(align:...)` and `%(end)` is 130 130 quoted, but if nested then only the topmost level performs 131 131 quoting. 132 132 133 - if:: 134 - Used as %(if)...%(then)...%(end) or 135 - %(if)...%(then)...%(else)...%(end). If there is an atom with 136 - value or string literal after the %(if) then everything after 137 - the %(then) is printed, else if the %(else) atom is used, then 133 + `if`:: 134 + Used as `%(if)...%(then)...%(end)` or 135 + `%(if)...%(then)...%(else)...%(end)`. If there is an atom with 136 + value or string literal after the `%(if)` then everything after 137 + the `%(then)` is printed, else if the `%(else)` atom is used, then 138 138 everything after %(else) is printed. We ignore space when 139 - evaluating the string before %(then), this is useful when we 140 - use the %(HEAD) atom which prints either "*" or " " and we 141 - want to apply the 'if' condition only on the 'HEAD' ref. 142 - Append ":equals=<string>" or ":notequals=<string>" to compare 143 - the value between the %(if:...) and %(then) atoms with the 139 + evaluating the string before `%(then)`, this is useful when we 140 + use the `%(HEAD)` atom which prints either "`*`" or " " and we 141 + want to apply the 'if' condition only on the `HEAD` ref. 142 + Append "`:equals=<string>`" or "`:notequals=<string>`" to compare 143 + the value between the `%(if:...)` and `%(then)` atoms with the 144 144 given string. 145 145 146 - symref:: 146 + `symref`:: 147 147 The ref which the given symbolic ref refers to. If not a 148 148 symbolic ref, nothing is printed. Respects the `:short`, 149 149 `:lstrip` and `:rstrip` options in the same way as `refname` 150 150 above. 151 151 152 - signature:: 152 + `signature`:: 153 153 The GPG signature of a commit. 154 154 155 - signature:grade:: 156 - Show "G" for a good (valid) signature, "B" for a bad 157 - signature, "U" for a good signature with unknown validity, "X" 158 - for a good signature that has expired, "Y" for a good 159 - signature made by an expired key, "R" for a good signature 160 - made by a revoked key, "E" if the signature cannot be 161 - checked (e.g. missing key) and "N" for no signature. 155 + `signature:grade`:: 156 + Show 157 + `G`;; for a good (valid) signature 158 + `B`;; for a bad signature 159 + `U`;; for a good signature with unknown validity 160 + `X`;; for a good signature that has expired 161 + `Y`;; for a good signature made by an expired key 162 + `R`;; for a good signature made by a revoked key 163 + `E`;; if the signature cannot be checked (e.g. missing key) 164 + `N`;; for no signature. 162 165 163 - signature:signer:: 166 + `signature:signer`:: 164 167 The signer of the GPG signature of a commit. 165 168 166 - signature:key:: 169 + `signature:key`:: 167 170 The key of the GPG signature of a commit. 168 171 169 - signature:fingerprint:: 172 + `signature:fingerprint`:: 170 173 The fingerprint of the GPG signature of a commit. 171 174 172 - signature:primarykeyfingerprint:: 175 + `signature:primarykeyfingerprint`:: 173 176 The primary key fingerprint of the GPG signature of a commit. 174 177 175 - signature:trustlevel:: 178 + `signature:trustlevel`:: 176 179 The trust level of the GPG signature of a commit. Possible 177 180 outputs are `ultimate`, `fully`, `marginal`, `never` and `undefined`. 178 181 179 - worktreepath:: 182 + `worktreepath`:: 180 183 The absolute path to the worktree in which the ref is checked 181 184 out, if it is checked out in any linked worktree. Empty string 182 185 otherwise. 183 186 184 - ahead-behind:<committish>:: 187 + `ahead-behind:<commit-ish>`:: 185 188 Two integers, separated by a space, demonstrating the number of 186 189 commits ahead and behind, respectively, when comparing the output 187 - ref to the `<committish>` specified in the format. 190 + ref to the _<committish>_ specified in the format. 188 191 189 - is-base:<committish>:: 190 - In at most one row, `(<committish>)` will appear to indicate the ref 192 + `is-base:<commit-ish>`:: 193 + In at most one row, `(<commit-ish>)` will appear to indicate the ref 191 194 that is most likely the ref used as a starting point for the branch 192 - that produced `<committish>`. This choice is made using a heuristic: 195 + that produced _<commit-ish>_. This choice is made using a heuristic: 193 196 choose the ref that minimizes the number of commits in the 194 - first-parent history of `<committish>` and not in the first-parent 197 + first-parent history of _<commit-ish>_ and not in the first-parent 195 198 history of the ref. 196 199 + 197 200 For example, consider the following figure of first-parent histories of ··· 225 228 earliest ref in the sorted order. 226 229 + 227 230 Note that this token will not appear if the first-parent history of 228 - `<committish>` does not intersect the first-parent histories of the 231 + _<commit-ish>_ does not intersect the first-parent histories of the 229 232 filtered refs. 230 233 231 - describe[:options]:: 234 + `describe[:<option>,...]`:: 232 235 A human-readable name, like linkgit:git-describe[1]; 233 236 empty string for undescribable commits. The `describe` string may 234 237 be followed by a colon and one or more comma-separated options. 235 238 + 236 239 -- 237 - tags=<bool-value>;; 240 + `tags=<bool-value>`;; 238 241 Instead of only considering annotated tags, consider 239 242 lightweight tags as well; see the corresponding option in 240 243 linkgit:git-describe[1] for details. 241 - abbrev=<number>;; 242 - Use at least <number> hexadecimal digits; see the corresponding 244 + `abbrev=<number>`;; 245 + Use at least _<number>_ hexadecimal digits; see the corresponding 243 246 option in linkgit:git-describe[1] for details. 244 - match=<pattern>;; 245 - Only consider tags matching the given `glob(7)` pattern, 246 - excluding the "refs/tags/" prefix; see the corresponding option 247 + `match=<pattern>`;; 248 + Only consider tags matching the `glob`(7) _<pattern>_, 249 + excluding the `refs/tags/` prefix; see the corresponding option 247 250 in linkgit:git-describe[1] for details. 248 - exclude=<pattern>;; 249 - Do not consider tags matching the given `glob(7)` pattern, 250 - excluding the "refs/tags/" prefix; see the corresponding option 251 + `exclude=<pattern>`;; 252 + Do not consider tags matching the `glob`(7) _<pattern>_, 253 + excluding the `refs/tags/` prefix; see the corresponding option 251 254 in linkgit:git-describe[1] for details. 252 255 -- 253 256 ··· 279 282 280 283 The raw data in an object is `raw`. 281 284 282 - raw:size:: 285 + `raw:size`:: 283 286 The raw data size of the object. 284 287 285 288 Note that `--format=%(raw)` can not be used with `--python`, `--shell`, `--tcl`, ··· 289 292 The message in a commit or a tag object is `contents`, from which 290 293 `contents:<part>` can be used to extract various parts out of: 291 294 292 - contents:size:: 295 + `contents:size`:: 293 296 The size in bytes of the commit or tag message. 294 297 295 - contents:subject:: 298 + `contents:subject`:: 296 299 The first paragraph of the message, which typically is a 297 300 single line, is taken as the "subject" of the commit or the 298 301 tag message. ··· 300 303 obtain same results. `:sanitize` can be appended to `subject` for 301 304 subject line suitable for filename. 302 305 303 - contents:body:: 306 + `contents:body`:: 304 307 The remainder of the commit or the tag message that follows 305 308 the "subject". 306 309 307 - contents:signature:: 310 + `contents:signature`:: 308 311 The optional GPG signature of the tag. 309 312 310 - contents:lines=N:: 311 - The first `N` lines of the message. 313 + `contents:lines=<n>`:: 314 + The first _<n>_ lines of the message. 312 315 313 316 Additionally, the trailers as interpreted by linkgit:git-interpret-trailers[1] 314 - are obtained as `trailers[:options]` (or by using the historical alias 315 - `contents:trailers[:options]`). For valid [:option] values see `trailers` 317 + are obtained as `trailers[:<option>,...]` (or by using the historical alias 318 + `contents:trailers[:<option>,...]`). For valid _<option>_ values see `trailers` 316 319 section of linkgit:git-log[1]. 317 320 318 321 For sorting purposes, fields with numeric values sort in numeric order ··· 332 335 a `--sort` key, references will be sorted according to the byte-value of the 333 336 formatted string rather than the numeric value of the underlying timestamp. 334 337 335 - Some atoms like %(align) and %(if) always require a matching %(end). 336 - We call them "opening atoms" and sometimes denote them as %($open). 338 + Some atoms like `%(align)` and `%(if)` always require a matching `%(end)`. 339 + We call them "opening atoms" and sometimes denote them as `%($open)`. 337 340 338 341 When a scripting language specific quoting is in effect, everything 339 342 between a top-level opening atom and its matching %(end) is evaluated ··· 351 354 #!/bin/sh 352 355 353 356 git for-each-ref --count=3 --sort='-*authordate' \ 354 - --format='From: %(*authorname) %(*authoremail) 357 + `--format='From: %(*authorname) %(*authoremail) 355 358 Subject: %(*subject) 356 359 Date: %(*authordate) 357 360 Ref: %(*refname) ··· 362 365 363 366 364 367 A simple example showing the use of shell eval on the output, 365 - demonstrating the use of --shell. List the prefixes of all heads: 368 + demonstrating the use of `--shell`. List the prefixes of all heads: 366 369 367 370 ------------ 368 371 #!/bin/sh ··· 430 433 ------------ 431 434 432 435 433 - An example to show the usage of %(if)...%(then)...%(else)...%(end). 436 + An example to show the usage of `%(if)...%(then)...%(else)...%(end)`. 434 437 This prefixes the current branch with a star. 435 438 436 439 ------------ ··· 438 441 ------------ 439 442 440 443 441 - An example to show the usage of %(if)...%(then)...%(end). 444 + An example to show the usage of `%(if)...%(then)...%(end)`. 442 445 This prints the authorname, if present. 443 446 444 447 ------------
+8 -4
Documentation/git-format-patch.adoc
··· 295 295 transformation for you, and this option should not be used if you are 296 296 feeding the result to `git send-email`. 297 297 298 - --[no-]force-in-body-from:: 298 + --force-in-body-from:: 299 + --no-force-in-body-from:: 299 300 With the e-mail sender specified via the `--from` option, by 300 301 default, an in-body "From:" to identify the real author of 301 302 the commit is added at the top of the commit log message if ··· 314 315 `Cc:`, and custom) headers added so far from config or command 315 316 line. 316 317 317 - --[no-]cover-letter:: 318 + --cover-letter:: 319 + --no-cover-letter:: 318 320 In addition to the patches, generate a cover letter file 319 321 containing the branch description, shortlog and the overall diffstat. You can 320 322 fill in a description in the file before sending it out. ··· 379 381 The default is `--no-notes`, unless the `format.notes` configuration is 380 382 set. 381 383 382 - --[no-]signature=<signature>:: 384 + --signature=<signature>:: 385 + --no-signature:: 383 386 Add a signature to each message produced. Per RFC 3676 the signature 384 387 is separated from the body by a line with '-- ' on it. If the 385 388 signature option is omitted the signature defaults to the Git version ··· 411 414 Output an all-zero hash in each patch's From header instead 412 415 of the hash of the commit. 413 416 414 - --[no-]base[=<commit>]:: 417 + --no-base:: 418 + --base[=<commit>]:: 415 419 Record the base tree information to identify the state the 416 420 patch series applies to. See the BASE TREE INFORMATION section 417 421 below for details. If <commit> is "auto", a base commit is
+6 -3
Documentation/git-fsck.adoc
··· 31 31 Print out objects that exist but that aren't reachable from any 32 32 of the reference nodes. 33 33 34 - --[no-]dangling:: 34 + --dangling:: 35 + --no-dangling:: 35 36 Print objects that exist but that are never 'directly' used (default). 36 37 `--no-dangling` can be used to omit this information from the output. 37 38 ··· 97 98 compatible with linkgit:git-rev-parse[1], e.g. 98 99 `HEAD@{1234567890}~25^2:src/`. 99 100 100 - --[no-]progress:: 101 + --progress:: 102 + --no-progress:: 101 103 Progress status is reported on the standard error stream by 102 104 default when it is attached to a terminal, unless 103 105 --no-progress or --verbose is specified. --progress forces 104 106 progress status even if the standard error stream is not 105 107 directed to a terminal. 106 108 107 - --[no-]references:: 109 + --references:: 110 + --no-references:: 108 111 Control whether to check the references database consistency 109 112 via 'git refs verify'. See linkgit:git-refs[1] for details. 110 113 The default is to check the references database.
+4 -2
Documentation/git-gc.adoc
··· 53 53 other housekeeping tasks (e.g. rerere, working trees, reflog...) will 54 54 be performed as well. 55 55 56 - --[no-]detach:: 56 + --detach:: 57 + --no-detach:: 57 58 Run in the background if the system supports it. This option overrides 58 59 the `gc.autoDetach` config. 59 60 60 - --[no-]cruft:: 61 + --cruft:: 62 + --no-cruft:: 61 63 When expiring unreachable objects, pack them separately into a 62 64 cruft pack instead of storing them as loose objects. `--cruft` 63 65 is on by default.
+4 -1
Documentation/git-http-fetch.adoc
··· 25 25 Either the hash or the filename under [URL]/refs/ to 26 26 pull. 27 27 28 - -a, -c, -t:: 28 + -a:: 29 + -c:: 30 + -t:: 29 31 These options are ignored for historical reasons. 32 + 30 33 -v:: 31 34 Report what is downloaded. 32 35
+2 -1
Documentation/git-index-pack.adoc
··· 36 36 fails if the name of packed archive does not end 37 37 with .pack). 38 38 39 - --[no-]rev-index:: 39 + --rev-index:: 40 + --no-rev-index:: 40 41 When this flag is provided, generate a reverse index 41 42 (a `.rev` file) corresponding to the given pack. If 42 43 `--verify` is given, ensure that the existing
+4 -2
Documentation/git-log.adoc
··· 73 73 Print out the ref name given on the command line by which each 74 74 commit was reached. 75 75 76 - `--[no-]mailmap`:: 77 - `--[no-]use-mailmap`:: 76 + `--mailmap`:: 77 + `--no-mailmap`:: 78 + `--use-mailmap`:: 79 + `--no-use-mailmap`:: 78 80 Use mailmap file to map author and committer names and email 79 81 addresses to canonical real names and email addresses. See 80 82 linkgit:git-shortlog[1].
+2 -1
Documentation/git-merge-tree.adoc
··· 59 59 do not list filenames multiple times if they have multiple 60 60 conflicting stages). 61 61 62 - --[no-]messages:: 62 + --messages:: 63 + --no-messages:: 63 64 Write any informational messages such as "Auto-merging <path>" 64 65 or CONFLICT notices to the end of stdout. If unspecified, the 65 66 default is to include these messages if there are merge
+2 -1
Documentation/git-multi-pack-index.adoc
··· 25 25 + 26 26 `<dir>` must be an alternate of the current repository. 27 27 28 - --[no-]progress:: 28 + --progress:: 29 + --no-progress:: 29 30 Turn progress on/off explicitly. If neither is specified, progress is 30 31 shown if standard error is connected to a terminal. Supported by 31 32 sub-commands `write`, `verify`, `expire`, and `repack.
+1
Documentation/git-p4.adoc
··· 66 66 ~~~~~ 67 67 Generally, 'git p4 clone' is used to create a new Git directory 68 68 from an existing p4 repository: 69 + 69 70 ------------ 70 71 $ git p4 clone //depot/path/project 71 72 ------------
+2 -1
Documentation/git-pack-objects.adoc
··· 243 243 Add --no-reuse-object if you want to force a uniform compression 244 244 level on all data no matter the source. 245 245 246 - --[no-]sparse:: 246 + --sparse:: 247 + --no-sparse:: 247 248 Toggle the "sparse" algorithm to determine which objects to include in 248 249 the pack, when combined with the "--revs" option. This algorithm 249 250 only walks trees that appear in paths that introduce new objects.
+2 -1
Documentation/git-pull.adoc
··· 87 87 --verbose:: 88 88 Pass --verbose to git-fetch and git-merge. 89 89 90 - --[no-]recurse-submodules[=(yes|on-demand|no)]:: 90 + --recurse-submodules[=(yes|on-demand|no)]:: 91 + --no-recurse-submodules:: 91 92 This option controls if new commits of populated submodules should 92 93 be fetched, and if the working trees of active submodules should be 93 94 updated, too (see linkgit:git-fetch[1], linkgit:git-config[1] and
+12 -6
Documentation/git-push.adoc
··· 197 197 with configuration variable `push.followTags`. For more 198 198 information, see `push.followTags` in linkgit:git-config[1]. 199 199 200 - --[no-]signed:: 200 + --signed:: 201 + --no-signed:: 201 202 --signed=(true|false|if-asked):: 202 203 GPG-sign the push request to update refs on the receiving 203 204 side, to allow it to be checked by the hooks and/or be ··· 208 209 will also fail if the actual call to `gpg --sign` fails. See 209 210 linkgit:git-receive-pack[1] for the details on the receiving end. 210 211 211 - --[no-]atomic:: 212 + --atomic:: 213 + --no-atomic:: 212 214 Use an atomic transaction on the remote side if available. 213 215 Either all refs are updated, or on error, no refs are updated. 214 216 If the server does not support atomic pushes the push will fail. ··· 232 234 repository over ssh, and you do not have the program in 233 235 a directory on the default $PATH. 234 236 235 - --[no-]force-with-lease:: 237 + --force-with-lease:: 238 + --no-force-with-lease:: 236 239 --force-with-lease=<refname>:: 237 240 --force-with-lease=<refname>:<expect>:: 238 241 Usually, "git push" refuses to update a remote ref that is ··· 350 353 origin +master` to force a push to the `master` branch). See the 351 354 `<refspec>...` section above for details. 352 355 353 - --[no-]force-if-includes:: 356 + --force-if-includes:: 357 + --no-force-if-includes:: 354 358 Force an update only if the tip of the remote-tracking ref 355 359 has been integrated locally. 356 360 + ··· 377 381 linkgit:git-pull[1] and other commands. For more information, 378 382 see `branch.<name>.merge` in linkgit:git-config[1]. 379 383 380 - --[no-]thin:: 384 + --thin:: 385 + --no-thin:: 381 386 These options are passed to linkgit:git-send-pack[1]. A thin transfer 382 387 significantly reduces the amount of sent data when the sender and 383 388 receiver share many of the same objects in common. The default is ··· 419 424 "push.recurseSubmodules={on-demand,only}" or "submodule.recurse" configuration, 420 425 further recursion will occur. In this case, "only" is treated as "on-demand". 421 426 422 - --[no-]verify:: 427 + --verify:: 428 + --no-verify:: 423 429 Toggle the pre-push hook (see linkgit:githooks[5]). The 424 430 default is --verify, giving the hook a chance to prevent the 425 431 push. With --no-verify, the hook is bypassed completely.
+2 -1
Documentation/git-range-diff.adoc
··· 96 96 --remerge-diff:: 97 97 Convenience option, equivalent to `--diff-merges=remerge`. 98 98 99 - --[no-]notes[=<ref>]:: 99 + --notes[=<ref>]:: 100 + --no-notes:: 100 101 This flag is passed to the `git log` program 101 102 (see linkgit:git-log[1]) that generates the patches. 102 103
+2 -1
Documentation/git-read-tree.adoc
··· 100 100 directories the index file and index output file are 101 101 located in. 102 102 103 - --[no-]recurse-submodules:: 103 + --recurse-submodules:: 104 + --no-recurse-submodules:: 104 105 Using --recurse-submodules will update the content of all active 105 106 submodules according to the commit recorded in the superproject by 106 107 calling read-tree recursively, also setting the submodules' HEAD to be
+1 -1
Documentation/git-rebase.adoc
··· 687 687 * --fork-point and --root 688 688 689 689 BEHAVIORAL DIFFERENCES 690 - ----------------------- 690 + ---------------------- 691 691 692 692 `git rebase` has two primary backends: 'apply' and 'merge'. (The 'apply' 693 693 backend used to be known as the 'am' backend, but the name led to
+11 -11
Documentation/git-refs.adoc
··· 17 17 [--merged[=<object>]] [--no-merged[=<object>]] 18 18 [--contains[=<object>]] [--no-contains[=<object>]] 19 19 [(--exclude=<pattern>)...] [--start-after=<marker>] 20 - [ --stdin | <pattern>... ] 20 + [ --stdin | (<pattern>...)] 21 21 22 22 DESCRIPTION 23 23 ----------- ··· 27 27 COMMANDS 28 28 -------- 29 29 30 - migrate:: 30 + `migrate`:: 31 31 Migrate ref store between different formats. 32 32 33 - verify:: 33 + `verify`:: 34 34 Verify reference database consistency. 35 35 36 36 list:: ··· 41 41 OPTIONS 42 42 ------- 43 43 44 - The following options are specific to 'git refs migrate': 44 + The following options are specific to `git refs migrate`: 45 45 46 - --ref-format=<format>:: 46 + `--ref-format=<format>`:: 47 47 The ref format to migrate the ref store to. Can be one of: 48 48 + 49 49 include::ref-storage-format.adoc[] 50 50 51 - --dry-run:: 51 + `--dry-run`:: 52 52 Perform the migration, but do not modify the repository. The migrated 53 53 refs will be written into a separate directory that can be inspected 54 54 separately. The name of the directory will be reported on stdout. This 55 55 can be used to double check that the migration works as expected before 56 56 performing the actual migration. 57 57 58 - --reflog:: 59 - --no-reflog:: 58 + `--reflog`:: 59 + `--no-reflog`:: 60 60 Choose between migrating the reflog data to the new backend, 61 61 and discarding them. The default is "--reflog", to migrate. 62 62 63 - The following options are specific to 'git refs verify': 63 + The following options are specific to `git refs verify`: 64 64 65 - --strict:: 65 + `--strict`:: 66 66 Enable stricter error checking. This will cause warnings to be 67 67 reported as errors. See linkgit:git-fsck[1]. 68 68 69 - --verbose:: 69 + `--verbose`:: 70 70 When verifying the reference database consistency, be chatty. 71 71 72 72 The following options are specific to 'git refs list':
+2 -1
Documentation/git-reset.adoc
··· 90 90 If a file that is different between _<commit>_ and `HEAD` has local 91 91 changes, reset is aborted. 92 92 93 - `--[no-]recurse-submodules`:: 93 + `--recurse-submodules`:: 94 + `--no-recurse-submodules`:: 94 95 When the working tree is updated, using `--recurse-submodules` will 95 96 also recursively reset the working tree of all active submodules 96 97 according to the commit recorded in the superproject, also setting
+20 -10
Documentation/git-send-email.adoc
··· 115 115 Only necessary if `--compose` is also set. If `--compose` 116 116 is not set, this will be prompted for. 117 117 118 - --[no-]outlook-id-fix:: 118 + --outlook-id-fix:: 119 + --no-outlook-id-fix:: 119 120 Microsoft Outlook SMTP servers discard the Message-ID sent via email and 120 121 assign a new random Message-ID, thus breaking threads. 121 122 + ··· 350 351 --no-header-cmd:: 351 352 Disable any header command in use. 352 353 353 - --[no-]chain-reply-to:: 354 + --chain-reply-to:: 355 + --no-chain-reply-to:: 354 356 If this is set, each email will be sent as a reply to the previous 355 357 email sent. If disabled with `--no-chain-reply-to`, all emails after 356 358 the first will be sent as replies to the first email sent. When using ··· 364 366 values in the `sendemail` section. The default identity is 365 367 the value of `sendemail.identity`. 366 368 367 - --[no-]signed-off-by-cc:: 369 + --signed-off-by-cc:: 370 + --no-signed-off-by-cc:: 368 371 If this is set, add emails found in the `Signed-off-by` trailer or `Cc:` 369 372 lines to the cc list. Default is the value of `sendemail.signedOffByCc` 370 373 configuration value; if that is unspecified, default to 371 374 `--signed-off-by-cc`. 372 375 373 - --[no-]cc-cover:: 376 + --cc-cover:: 377 + --no-cc-cover:: 374 378 If this is set, emails found in `Cc:` headers in the first patch of 375 379 the series (typically the cover letter) are added to the cc list 376 380 for each email set. Default is the value of `sendemail.ccCover` 377 381 configuration value; if that is unspecified, default to `--no-cc-cover`. 378 382 379 - --[no-]to-cover:: 383 + --to-cover:: 384 + --no-to-cover:: 380 385 If this is set, emails found in `To:` headers in the first patch of 381 386 the series (typically the cover letter) are added to the to list 382 387 for each email set. Default is the value of `sendemail.toCover` ··· 407 412 that is unspecified, default to `self` if `--suppress-from` is 408 413 specified, as well as `body` if `--no-signed-off-cc` is specified. 409 414 410 - --[no-]suppress-from:: 415 + --suppress-from:: 416 + --no-suppress-from:: 411 417 If this is set, do not add the `From:` address to the `Cc:` list. 412 418 Default is the value of `sendemail.suppressFrom` configuration 413 419 value; if that is unspecified, default to `--no-suppress-from`. 414 420 415 - --[no-]thread:: 421 + --thread:: 422 + --no-thread:: 416 423 If this is set, the `In-Reply-To` and `References` headers will be 417 424 added to each email sent. Whether each mail refers to the 418 425 previous email (`deep` threading per `git format-patch` ··· 430 437 Failure to do so may not produce the expected result in the 431 438 recipient's MUA. 432 439 433 - --[no-]mailmap:: 440 + --mailmap:: 441 + --no-mailmap:: 434 442 Use the mailmap file (see linkgit:gitmailmap[5]) to map all 435 443 addresses to their canonical real name and email address. Additional 436 444 mailmap data specific to `git send-email` may be provided using the ··· 459 467 --dry-run:: 460 468 Do everything except actually send the emails. 461 469 462 - --[no-]format-patch:: 470 + --format-patch:: 471 + --no-format-patch:: 463 472 When an argument may be understood either as a reference or as a file name, 464 473 choose to understand it as a format-patch argument (`--format-patch`) 465 474 or as a file name (`--no-format-patch`). By default, when such a conflict ··· 469 478 Make `git send-email` less verbose. One line per email should be 470 479 all that is output. 471 480 472 - --[no-]validate:: 481 + --validate:: 482 + --no-validate:: 473 483 Perform sanity checks on patches. 474 484 Currently, validation means the following: 475 485 +
+2 -1
Documentation/git-send-pack.adoc
··· 71 71 fails to update then the entire push will fail without changing any 72 72 refs. 73 73 74 - --[no-]signed:: 74 + --signed:: 75 + --no-signed:: 75 76 --signed=(true|false|if-asked):: 76 77 GPG-sign the push request to update refs on the receiving 77 78 side, to allow it to be checked by the hooks and/or be
+4 -2
Documentation/git-submodule.adoc
··· 442 442 clone with a history truncated to the specified number of revisions. 443 443 See linkgit:git-clone[1] 444 444 445 - --[no-]recommend-shallow:: 445 + --recommend-shallow:: 446 + --no-recommend-shallow:: 446 447 This option is only valid for the update command. 447 448 The initial clone of a submodule will use the recommended 448 449 `submodule.<name>.shallow` as provided by the `.gitmodules` file ··· 454 455 Clone new submodules in parallel with as many jobs. 455 456 Defaults to the `submodule.fetchJobs` option. 456 457 457 - --[no-]single-branch:: 458 + --single-branch:: 459 + --no-single-branch:: 458 460 This option is only valid for the update command. 459 461 Clone only one branch during update: HEAD or one specified by --branch. 460 462
+2
Documentation/git-svn.adoc
··· 1012 1012 1013 1013 If you do merge, note the following rule: 'git svn dcommit' will 1014 1014 attempt to commit on top of the SVN commit named in 1015 + 1015 1016 ------------------------------------------------------------------------ 1016 1017 git log --grep=^git-svn-id: --first-parent -1 1017 1018 ------------------------------------------------------------------------ 1019 + 1018 1020 You 'must' therefore ensure that the most recent commit of the branch 1019 1021 you want to dcommit to is the 'first' parent of the merge. Chaos will 1020 1022 ensue otherwise, especially if the first parent is an older commit on
+8 -4
Documentation/git-update-index.adoc
··· 86 86 --chmod=(+|-)x:: 87 87 Set the execute permissions on the updated files. 88 88 89 - --[no-]assume-unchanged:: 89 + --assume-unchanged:: 90 + --no-assume-unchanged:: 90 91 When this flag is specified, the object names recorded 91 92 for the paths are not updated. Instead, this option 92 93 sets/unsets the "assume unchanged" bit for the ··· 108 109 Like `--refresh`, but checks stat information unconditionally, 109 110 without regard to the "assume unchanged" setting. 110 111 111 - --[no-]skip-worktree:: 112 + --skip-worktree:: 113 + --no-skip-worktree:: 112 114 When one of these flags is specified, the object names recorded 113 115 for the paths are not updated. Instead, these options 114 116 set and unset the "skip-worktree" bit for the paths. See 115 117 section "Skip-worktree bit" below for more information. 116 118 117 119 118 - --[no-]ignore-skip-worktree-entries:: 120 + --ignore-skip-worktree-entries:: 121 + --no-ignore-skip-worktree-entries:: 119 122 Do not remove skip-worktree (AKA "index-only") entries even when 120 123 the `--remove` option was specified. 121 124 122 - --[no-]fsmonitor-valid:: 125 + --fsmonitor-valid:: 126 + --no-fsmonitor-valid:: 123 127 When one of these flags is specified, the object names recorded 124 128 for the paths are not updated. Instead, these options 125 129 set and unset the "fsmonitor valid" bit for the paths. See
+2 -1
Documentation/git-upload-pack.adoc
··· 25 25 OPTIONS 26 26 ------- 27 27 28 - --[no-]strict:: 28 + --strict:: 29 + --no-strict:: 29 30 Do not try <directory>/.git/ if <directory> is not a Git directory. 30 31 31 32 --timeout=<n>::
+8 -4
Documentation/git-worktree.adoc
··· 200 200 With `add`, detach `HEAD` in the new worktree. See "DETACHED HEAD" 201 201 in linkgit:git-checkout[1]. 202 202 203 - --[no-]checkout:: 203 + --checkout:: 204 + --no-checkout:: 204 205 By default, `add` checks out `<commit-ish>`, however, `--no-checkout` can 205 206 be used to suppress checkout in order to make customizations, 206 207 such as configuring sparse-checkout. See "Sparse checkout" 207 208 in linkgit:git-read-tree[1]. 208 209 209 - --[no-]guess-remote:: 210 + --guess-remote:: 211 + --no-guess-remote:: 210 212 With `worktree add <path>`, without `<commit-ish>`, instead 211 213 of creating a new branch from `HEAD`, if there exists a tracking 212 214 branch in exactly one remote matching the basename of `<path>`, ··· 216 218 This can also be set up as the default behaviour by using the 217 219 `worktree.guessRemote` config option. 218 220 219 - --[no-]relative-paths:: 221 + --relative-paths:: 222 + --no-relative-paths:: 220 223 Link worktrees using relative paths or absolute paths (default). 221 224 Overrides the `worktree.useRelativePaths` config option, see 222 225 linkgit:git-config[1]. ··· 224 227 With `repair`, the linking files will be updated if there's an absolute/relative 225 228 mismatch, even if the links are correct. 226 229 227 - --[no-]track:: 230 + --track:: 231 + --no-track:: 228 232 When creating a new branch, if `<commit-ish>` is a branch, 229 233 mark it as "upstream" from the new branch. This is the 230 234 default if `<commit-ish>` is a remote-tracking branch. See
+1 -1
Documentation/gitprotocol-http.adoc
··· 318 318 319 319 320 320 Smart Service git-upload-pack 321 - ------------------------------ 321 + ----------------------------- 322 322 This service reads from the repository pointed to by `$GIT_URL`. 323 323 324 324 Clients MUST first perform ref discovery with
+2 -1
Documentation/gitsubmodules.adoc
··· 8 8 SYNOPSIS 9 9 -------- 10 10 .gitmodules, $GIT_DIR/config 11 + 11 12 ------------------ 12 13 git submodule 13 14 git <command> --recurse-submodules ··· 240 241 241 242 242 243 Workflow for an artificially split repo 243 - -------------------------------------- 244 + --------------------------------------- 244 245 245 246 # Enable recursion for relevant commands, such that 246 247 # regular commands recurse into submodules by default
+1 -1
Documentation/gitweb.conf.adoc
··· 178 178 Show repository only if this file exists (in repository). Only 179 179 effective if this variable evaluates to true. Can be set when 180 180 building gitweb by setting `GITWEB_EXPORT_OK`. This path is 181 - relative to `GIT_DIR`. git-daemon[1] uses 'git-daemon-export-ok', 181 + relative to `GIT_DIR`. linkgit:git-daemon[1] uses 'git-daemon-export-ok', 182 182 unless started with `--export-all`. By default this variable is 183 183 not set, which means that this feature is turned off. 184 184
+48
Documentation/lint-delimited-sections.perl
··· 1 + #!/usr/bin/perl 2 + 3 + use strict; 4 + use warnings; 5 + 6 + my $exit_code = 0; 7 + sub report { 8 + my ($msg) = @_; 9 + print STDERR "$ARGV:$.: $msg\n"; 10 + $exit_code = 1; 11 + } 12 + 13 + my $line_length = 0; 14 + my $in_section = 0; 15 + my $section_header = ""; 16 + 17 + 18 + while (my $line = <>) { 19 + if (($line =~ /^\+?$/) || 20 + ($line =~ /^\[.*\]$/) || 21 + ($line =~ /^ifdef::/)) { 22 + $line_length = 0; 23 + } elsif ($line =~ /^[^-.]/) { 24 + $line_length = length($line); 25 + } elsif (($line =~ /^-{3,}$/) || ($line =~ /^\.{3,}$/)) { 26 + if ($in_section) { 27 + if ($line eq $section_header) { 28 + $in_section = 0; 29 + } 30 + next; 31 + } 32 + if ($line_length == 0) { 33 + $in_section = 1; 34 + $section_header = $line; 35 + next; 36 + } 37 + if (($line_length != 0) && (length($line) != $line_length)) { 38 + report("section delimiter not preceded by an empty line"); 39 + } 40 + $line_length = 0; 41 + } 42 + } 43 + 44 + if ($in_section) { 45 + report("section not finished"); 46 + } 47 + 48 + exit $exit_code;
+33
Documentation/lint-documentation-style.perl
··· 1 + #!/usr/bin/perl 2 + 3 + use strict; 4 + use warnings; 5 + 6 + my $exit_code = 0; 7 + sub report { 8 + my ($line, $msg) = @_; 9 + chomp $line; 10 + print STDERR "$ARGV:$.: '$line' $msg\n"; 11 + $exit_code = 1; 12 + } 13 + 14 + my $synopsis_style = 0; 15 + 16 + while (my $line = <>) { 17 + if ($line =~ /^[ \t]*`?[-a-z0-9.]+`?(, `?[-a-z0-9.]+`?)+(::|;;)$/) { 18 + 19 + report($line, "multiple parameters in a definition list item"); 20 + } 21 + if ($line =~ /^`?--\[no-\][a-z0-9-]+.*(::|;;)$/) { 22 + report($line, "definition list item with a `--[no-]` parameter"); 23 + } 24 + if ($line =~ /^\[synopsis\]$/) { 25 + $synopsis_style = 1; 26 + } 27 + if (($line =~ /^(-[-a-z].*|<[-a-z0-9]+>(\.{3})?)(::|;;)$/) && ($synopsis_style)) { 28 + report($line, "synopsis style and definition list item not backquoted"); 29 + } 30 + } 31 + 32 + 33 + exit $exit_code;
+7
Documentation/lint-gitlink.perl
··· 41 41 @ARGV = $to_check; 42 42 while (<>) { 43 43 my $line = $_; 44 + while ($line =~ m/(.{,8})((git[-a-z]+|scalar)\[(\d)*\])/g) { 45 + my $pos = pos $line; 46 + my ($macro, $target, $page, $section) = ($1, $2, $3, $4); 47 + if ( $macro ne "linkgit:" && $macro !~ "ifn?def::" && $macro ne "endif::" ) { 48 + report($pos, $line, $target, "linkgit: macro expected"); 49 + } 50 + } 44 51 while ($line =~ m/linkgit:((.*?)\[(\d)\])/g) { 45 52 my $pos = pos $line; 46 53 my ($target, $page, $section) = ($1, $2, $3);
+2 -1
Documentation/merge-options.adoc
··· 135 135 Only useful when merging. 136 136 endif::git-pull[] 137 137 138 - `--[no-]verify`:: 138 + `--verify`:: 139 + `--no-verify`:: 139 140 By default, the pre-merge and commit-msg hooks are run. 140 141 When `--no-verify` is given, these are bypassed. 141 142 See also linkgit:githooks[5].
+8
Documentation/mergetools/vimdiff.adoc
··· 3 3 4 4 When specifying `--tool=vimdiff` in `git mergetool` Git will open Vim with a 4 5 5 windows layout distributed in the following way: 6 + 6 7 .... 7 8 ------------------------------------------ 8 9 | | | | ··· 56 57 + 57 58 -- 58 59 If, for some reason, we are not interested in the `BASE` buffer. 60 + 59 61 .... 60 62 ------------------------------------------ 61 63 | | | | ··· 72 74 Only the `MERGED` buffer will be shown. Note, however, that all the other 73 75 ones are still loaded in vim, and you can access them with the "buffers" 74 76 command. 77 + 75 78 .... 76 79 ------------------------------------------ 77 80 | | ··· 88 91 When `MERGED` is not present in the layout, you must "mark" one of the 89 92 buffers with an arobase (`@`). That will become the buffer you need to edit and 90 93 save after resolving the conflicts. 94 + 91 95 .... 92 96 ------------------------------------------ 93 97 | | | ··· 106 110 Three tabs will open: the first one is a copy of the default layout, while 107 111 the other two only show the differences between (`BASE` and `LOCAL`) and 108 112 (`BASE` and `REMOTE`) respectively. 113 + 109 114 .... 110 115 ------------------------------------------ 111 116 | <TAB #1> | TAB #2 | TAB #3 | | ··· 119 124 | | 120 125 ------------------------------------------ 121 126 .... 127 + 122 128 .... 123 129 ------------------------------------------ 124 130 | TAB #1 | <TAB #2> | TAB #3 | | ··· 132 138 | | | 133 139 ------------------------------------------ 134 140 .... 141 + 135 142 .... 136 143 ------------------------------------------ 137 144 | TAB #1 | TAB #2 | <TAB #3> | | ··· 151 158 -- 152 159 Same as the previous example, but adds a fourth tab with the same 153 160 information as the first tab, with a different layout. 161 + 154 162 .... 155 163 --------------------------------------------- 156 164 | TAB #1 | TAB #2 | TAB #3 | <TAB #4> |
+12 -6
Documentation/scalar.adoc
··· 71 71 Instead of checking out the branch pointed to by the cloned 72 72 repository's HEAD, check out the `<name>` branch instead. 73 73 74 - --[no-]single-branch:: 74 + --single-branch:: 75 + --no-single-branch:: 75 76 Clone only the history leading to the tip of a single branch, either 76 77 specified by the `--branch` option or the primary branch remote's 77 78 `HEAD` points at. ··· 81 82 cloning. If the HEAD at the remote did not point at any branch when 82 83 `--single-branch` clone was made, no remote-tracking branch is created. 83 84 84 - --[no-]src:: 85 + --src:: 86 + --no-src:: 85 87 By default, `scalar clone` places the cloned repository within a 86 88 `<entlistment>/src` directory. Use `--no-src` to place the cloned 87 89 repository directly in the `<enlistment>` directory. 88 90 89 - --[no-]tags:: 91 + --tags:: 92 + --no-tags:: 90 93 By default, `scalar clone` will fetch the tag objects advertised by 91 94 the remote and future `git fetch` commands will do the same. Use 92 95 `--no-tags` to avoid fetching tags in `scalar clone` and to configure 93 96 the repository to avoid fetching tags in the future. To fetch tags after 94 97 cloning with `--no-tags`, run `git fetch --tags`. 95 98 96 - --[no-]full-clone:: 99 + --full-clone:: 100 + --no-full-clone:: 97 101 A sparse-checkout is initialized by default. This behavior can be 98 102 turned off via `--full-clone`. 99 103 100 - --[no-]maintenance:: 104 + --maintenance:: 105 + --no-maintenance:: 101 106 By default, `scalar clone` configures the enlistment to use Git's 102 107 background maintenance feature. Use the `--no-maintenance` to skip 103 108 this configuration. ··· 122 127 parent directory is considered to be the Scalar enlistment. If the worktree is 123 128 _not_ called `src/`, it itself will be considered to be the Scalar enlistment. 124 129 125 - --[no-]maintenance:: 130 + --maintenance:: 131 + --no-maintenance:: 126 132 By default, `scalar register` configures the enlistment to use Git's 127 133 background maintenance feature. Use the `--no-maintenance` to skip 128 134 this configuration. This does not disable any maintenance that may
+4 -1
Documentation/technical/api-path-walk.adoc
··· 39 39 the objects will be walked in a separate way based on those starting 40 40 commits. 41 41 42 - `commits`, `blobs`, `trees`, `tags`:: 42 + `commits`:: 43 + `blobs`:: 44 + `trees`:: 45 + `tags`:: 43 46 By default, these members are enabled and signal that the path-walk 44 47 API should call the `path_fn` on objects of these types. Specialized 45 48 applications could disable some options to make it simpler to walk
+1
Documentation/technical/long-running-process-protocol.adoc
··· 24 24 it supports and a flush packet. Git expects to read a list of desired 25 25 capabilities, which must be a subset of the supported capabilities list, 26 26 and a flush packet as response: 27 + 27 28 ------------------------ 28 29 packet: git> git-filter-client 29 30 packet: git> version=2
+1 -1
for-each-ref.h
··· 15 15 " [--merged[=<object>]] [--no-merged[=<object>]]\n" \ 16 16 " [--contains[=<object>]] [--no-contains[=<object>]]\n" \ 17 17 " [(--exclude=<pattern>)...] [--start-after=<marker>]\n" \ 18 - " [ --stdin | <pattern>... ]" 18 + " [ --stdin | (<pattern>...)]" 19 19 20 20 /* 21 21 * The core logic for for-each-ref and its clones.
+2
shared.mak
··· 88 88 89 89 QUIET_LINT_GITLINK = @echo ' ' LINT GITLINK $<; 90 90 QUIET_LINT_MANSEC = @echo ' ' LINT MAN SEC $<; 91 + QUIET_LINT_DELIMSEC = @echo ' ' LINT DEL SEC $<; 92 + QUIET_LINT_DOCSTYLE = @echo ' ' LINT DOCSTYLE $<; 91 93 QUIET_LINT_MANEND = @echo ' ' LINT MAN END $<; 92 94 93 95 export V