Skip to content

Commit

Permalink
Add files for v2.23.0
Browse files Browse the repository at this point in the history
Signed-off-by: Jean-Noël Avila <[email protected]>
  • Loading branch information
Jean-Noël Avila committed Aug 27, 2019
1 parent ac4781d commit df13b00
Show file tree
Hide file tree
Showing 85 changed files with 1,569 additions and 588 deletions.
2 changes: 1 addition & 1 deletion GIT-VERSION-FILE
Original file line number Diff line number Diff line change
@@ -1 +1 @@
GIT_VERSION = 2.21.0
GIT_VERSION = 2.23.0
19 changes: 19 additions & 0 deletions en/blame-options.txt
Original file line number Diff line number Diff line change
Expand Up @@ -110,5 +110,24 @@ commit. And the default value is 40. If there are more than one
`-C` options given, the <num> argument of the last `-C` will
take effect.

--ignore-rev <rev>::
Ignore changes made by the revision when assigning blame, as if the
change never happened. Lines that were changed or added by an ignored
commit will be blamed on the previous commit that changed that line or
nearby lines. This option may be specified multiple times to ignore
more than one revision. If the `blame.markIgnoredLines` config option
is set, then lines that were changed by an ignored commit and attributed to
another commit will be marked with a `?` in the blame output. If the
`blame.markUnblamableLines` config option is set, then those lines touched
by an ignored commit that we could not attribute to another revision are
marked with a '*'.

--ignore-revs-file <file>::
Ignore revisions listed in `file`, which must be in the same format as an
`fsck.skipList`. This option may be repeated, and these files will be
processed after any files specified with the `blame.ignoreRevsFile` config
option. An empty file name, `""`, will clear the list of revs from
previously processed files.

-h::
Show help message.
6 changes: 6 additions & 0 deletions en/cmds-mainporcelain.txt
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,9 @@ linkgit:git-rebase[1]::
linkgit:git-reset[1]::
Reset current HEAD to the specified state.

linkgit:git-restore[1]::
Restore working tree files.

linkgit:git-revert[1]::
Revert some existing commits.

Expand All @@ -106,6 +109,9 @@ linkgit:git-status[1]::
linkgit:git-submodule[1]::
Initialize, update or inspect submodules.

linkgit:git-switch[1]::
Switch branches.

linkgit:git-tag[1]::
Create, list, delete or verify a tag object signed with GPG.

Expand Down
2 changes: 1 addition & 1 deletion en/cmds-purehelpers.txt
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ linkgit:git-fmt-merge-msg[1]::
Produce a merge commit message.

linkgit:git-interpret-trailers[1]::
add or parse structured information in commit messages.
Add or parse structured information in commit messages.

linkgit:git-mailinfo[1]::
Extracts patch and authorship from a single e-mail message.
Expand Down
21 changes: 21 additions & 0 deletions en/config.txt
Original file line number Diff line number Diff line change
Expand Up @@ -144,6 +144,20 @@ refer to linkgit:gitignore[5] for details. For convenience:
This is the same as `gitdir` except that matching is done
case-insensitively (e.g. on case-insensitive file sytems)

`onbranch`::
The data that follows the keyword `onbranch:` is taken to be a
pattern with standard globbing wildcards and two additional
ones, `**/` and `/**`, that can match multiple path components.
If we are in a worktree where the name of the branch that is
currently checked out matches the pattern, the include condition
is met.
+
If the pattern ends with `/`, `**` will be automatically added. For
example, the pattern `foo/` becomes `foo/**`. In other words, it matches
all branches that begin with `foo/`. This is useful if your branches are
organized hierarchically and you would like to apply a configuration to
all the branches in that hierarchy.

A few more notes on matching via `gitdir` and `gitdir/i`:

* Symlinks in `$GIT_DIR` are not resolved before matching.
Expand Down Expand Up @@ -206,6 +220,11 @@ Example
[includeIf "gitdir:/path/to/group/"]
path = foo.inc

; include only if we are in a worktree where foo-branch is
; currently checked out
[includeIf "onbranch:foo-branch"]
path = foo.inc

Values
~~~~~~

Expand Down Expand Up @@ -422,6 +441,8 @@ include::config/submodule.txt[]

include::config/tag.txt[]

include::config/trace2.txt[]

include::config/transfer.txt[]

include::config/uploadarchive.txt[]
Expand Down
10 changes: 10 additions & 0 deletions en/config/fmt-merge-msg.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
merge.branchdesc::
In addition to branch names, populate the log message with
the branch description text associated with them. Defaults
to false.

merge.log::
In addition to branch names, populate the log message with at
most the specified number of one-line descriptions from the
actual commits that are being merged. Defaults to false, and
true is a synonym for 20.
106 changes: 106 additions & 0 deletions en/config/merge.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
merge.conflictStyle::
Specify the style in which conflicted hunks are written out to
working tree files upon merge. The default is "merge", which
shows a `<<<<<<<` conflict marker, changes made by one side,
a `=======` marker, changes made by the other side, and then
a `>>>>>>>` marker. An alternate style, "diff3", adds a `|||||||`
marker and the original text before the `=======` marker.

merge.defaultToUpstream::
If merge is called without any commit argument, merge the upstream
branches configured for the current branch by using their last
observed values stored in their remote-tracking branches.
The values of the `branch.<current branch>.merge` that name the
branches at the remote named by `branch.<current branch>.remote`
are consulted, and then they are mapped via `remote.<remote>.fetch`
to their corresponding remote-tracking branches, and the tips of
these tracking branches are merged.

merge.ff::
By default, Git does not create an extra merge commit when merging
a commit that is a descendant of the current commit. Instead, the
tip of the current branch is fast-forwarded. When set to `false`,
this variable tells Git to create an extra merge commit in such
a case (equivalent to giving the `--no-ff` option from the command
line). When set to `only`, only such fast-forward merges are
allowed (equivalent to giving the `--ff-only` option from the
command line).

merge.verifySignatures::
If true, this is equivalent to the --verify-signatures command
line option. See linkgit:git-merge[1] for details.

include::fmt-merge-msg.txt[]

merge.renameLimit::
The number of files to consider when performing rename detection
during a merge; if not specified, defaults to the value of
diff.renameLimit. This setting has no effect if rename detection
is turned off.

merge.renames::
Whether Git detects renames. If set to "false", rename detection
is disabled. If set to "true", basic rename detection is enabled.
Defaults to the value of diff.renames.

merge.directoryRenames::
Whether Git detects directory renames, affecting what happens at
merge time to new files added to a directory on one side of
history when that directory was renamed on the other side of
history. If merge.directoryRenames is set to "false", directory
rename detection is disabled, meaning that such new files will be
left behind in the old directory. If set to "true", directory
rename detection is enabled, meaning that such new files will be
moved into the new directory. If set to "conflict", a conflict
will be reported for such paths. If merge.renames is false,
merge.directoryRenames is ignored and treated as false. Defaults
to "conflict".

merge.renormalize::
Tell Git that canonical representation of files in the
repository has changed over time (e.g. earlier commits record
text files with CRLF line endings, but recent ones use LF line
endings). In such a repository, Git can convert the data
recorded in commits to a canonical form before performing a
merge to reduce unnecessary conflicts. For more information,
see section "Merging branches with differing checkin/checkout
attributes" in linkgit:gitattributes[5].

merge.stat::
Whether to print the diffstat between ORIG_HEAD and the merge result
at the end of the merge. True by default.

merge.tool::
Controls which merge tool is used by linkgit:git-mergetool[1].
The list below shows the valid built-in values.
Any other value is treated as a custom merge tool and requires
that a corresponding mergetool.<tool>.cmd variable is defined.

merge.guitool::
Controls which merge tool is used by linkgit:git-mergetool[1] when the
-g/--gui flag is specified. The list below shows the valid built-in values.
Any other value is treated as a custom merge tool and requires that a
corresponding mergetool.<guitool>.cmd variable is defined.

include::../mergetools-merge.txt[]

merge.verbosity::
Controls the amount of output shown by the recursive merge
strategy. Level 0 outputs nothing except a final error
message if conflicts were detected. Level 1 outputs only
conflicts, 2 outputs conflicts and file changes. Level 5 and
above outputs debugging information. The default is level 2.
Can be overridden by the `GIT_MERGE_VERBOSITY` environment variable.

merge.<driver>.name::
Defines a human-readable name for a custom low-level
merge driver. See linkgit:gitattributes[5] for details.

merge.<driver>.driver::
Defines the command that implements a custom low-level
merge driver. See linkgit:gitattributes[5] for details.

merge.<driver>.recursive::
Names a low-level merge driver to be used when
performing an internal merge between common ancestors.
See linkgit:gitattributes[5] for details.
22 changes: 18 additions & 4 deletions en/diff-format.txt
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ Possible status letters are:
- R: renaming of a file
- T: change in the type of the file
- U: file is unmerged (you must complete the merge before it can
be committed)
be committed)
- X: "unknown" change type (most probably a bug, please report it)

Status letters C and R are always followed by a score (denoting the
Expand Down Expand Up @@ -95,12 +95,26 @@ from the format described above in the following way:
. there are more "src" modes and "src" sha1
. status is concatenated status characters for each parent
. no optional "score" number
. single path, only for "dst"
. tab-separated pathname(s) of the file

Example:
For `-c` and `--cc`, only the destination or final path is shown even
if the file was renamed on any side of history. With
`--combined-all-paths`, the name of the path in each parent is shown
followed by the name of the path in the merge commit.

Examples for `-c` and `--cc` without `--combined-all-paths`:
------------------------------------------------
::100644 100644 100644 fabadb8 cc95eb0 4866510 MM desc.c
::100755 100755 100755 52b7a2d 6d1ac04 d2ac7d7 RM bar.sh
::100644 100644 100644 e07d6c5 9042e82 ee91881 RR phooey.c
------------------------------------------------

Examples when `--combined-all-paths` added to either `-c` or `--cc`:

------------------------------------------------
::100644 100644 100644 fabadb8 cc95eb0 4866510 MM describe.c
::100644 100644 100644 fabadb8 cc95eb0 4866510 MM desc.c desc.c desc.c
::100755 100755 100755 52b7a2d 6d1ac04 d2ac7d7 RM foo.sh bar.sh bar.sh
::100644 100644 100644 e07d6c5 9042e82 ee91881 RR fooey.c fuey.c phooey.c
------------------------------------------------

Note that 'combined diff' lists only files which were modified from
Expand Down
13 changes: 13 additions & 0 deletions en/diff-generate-patch.txt
Original file line number Diff line number Diff line change
Expand Up @@ -143,6 +143,19 @@ copying detection) are designed to work with diff of two
Similar to two-line header for traditional 'unified' diff
format, `/dev/null` is used to signal created or deleted
files.
+
However, if the --combined-all-paths option is provided, instead of a
two-line from-file/to-file you get a N+1 line from-file/to-file header,
where N is the number of parents in the merge commit

--- a/file
--- a/file
--- a/file
+++ b/file
+
This extended format can be useful if rename or copy detection is
active, to allow you to see the original name of the file in different
parents.

4. Chunk header format is modified to prevent people from
accidentally feeding it to `patch -p1`. Combined diff format
Expand Down
24 changes: 22 additions & 2 deletions en/diff-options.txt
Original file line number Diff line number Diff line change
Expand Up @@ -36,11 +36,21 @@ endif::git-format-patch[]
-U<n>::
--unified=<n>::
Generate diffs with <n> lines of context instead of
the usual three.
the usual three. Implies `--patch`.
ifndef::git-format-patch[]
Implies `-p`.
endif::git-format-patch[]

--output=<file>::
Output to a specific file instead of stdout.

--output-indicator-new=<char>::
--output-indicator-old=<char>::
--output-indicator-context=<char>::
Specify the character used to indicate new, old or context
lines in the generated patch. Normally they are '+', '-' and
' ' respectively.

ifndef::git-format-patch[]
--raw::
ifndef::git-log[]
Expand Down Expand Up @@ -148,6 +158,7 @@ These parameters can also be set individually with `--stat-width=<width>`,
number of modified files, as well as number of added and deleted
lines.

-X[<param1,param2,...>]::
--dirstat[=<param1,param2,...>]::
Output the distribution of relative amount of changes for each
sub-directory. The behavior of `--dirstat` can be customized by
Expand Down Expand Up @@ -192,6 +203,12 @@ directories with less than 10% of the total amount of changed files,
and accumulating child directory counts in the parent directories:
`--dirstat=files,10,cumulative`.

--cumulative::
Synonym for --dirstat=cumulative

--dirstat-by-file[=<param1,param2>...]::
Synonym for --dirstat=files,param1,param2...

--summary::
Output a condensed summary of extended header information
such as creations, renames and mode changes.
Expand Down Expand Up @@ -386,6 +403,9 @@ endif::git-format-patch[]
Turn off rename detection, even when the configuration
file gives the default to do so.

--[no-]rename-empty::
Whether to use empty blobs as rename source.

ifndef::git-format-patch[]
--check::
Warn if changes introduce conflict markers or whitespace errors.
Expand Down Expand Up @@ -416,7 +436,7 @@ endif::git-format-patch[]

--binary::
In addition to `--full-index`, output a binary diff that
can be applied with `git-apply`.
can be applied with `git-apply`. Implies `--patch`.

--abbrev[=<n>]::
Instead of showing the full 40-byte hexadecimal object
Expand Down
20 changes: 19 additions & 1 deletion en/fetch-options.txt
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,10 @@ ifndef::git-pull[]
Allow several <repository> and <group> arguments to be
specified. No <refspec>s may be specified.

--[no-]auto-gc::
Run `git gc --auto` at the end to perform garbage collection
if needed. This is enabled by default.

-p::
--prune::
Before fetching, remove any remote-tracking references that no
Expand Down Expand Up @@ -216,10 +220,24 @@ endif::git-pull[]
--server-option=<option>::
Transmit the given string to the server when communicating using
protocol version 2. The given string must not contain a NUL or LF
character.
character. The server's handling of server options, including
unknown ones, is server-specific.
When multiple `--server-option=<option>` are given, they are all
sent to the other side in the order listed on the command line.

--show-forced-updates::
By default, git checks if a branch is force-updated during
fetch. This can be disabled through fetch.showForcedUpdates, but
the --show-forced-updates option guarantees this check occurs.
See linkgit:git-config[1].

--no-show-forced-updates::
By default, git checks if a branch is force-updated during
fetch. Pass --no-show-forced-updates or set fetch.showForcedUpdates
to false to skip this check for performance reasons. If used during
'git-pull' the --ff-only option will still check for forced updates
before attempting a fast-forward update. See linkgit:git-config[1].

-4::
--ipv4::
Use IPv4 addresses only, ignoring IPv6 addresses.
Expand Down
9 changes: 0 additions & 9 deletions en/git-add.txt
Original file line number Diff line number Diff line change
Expand Up @@ -193,15 +193,6 @@ for "git add --no-all <pathspec>...", i.e. ignored removed files.
for command-line options).


CONFIGURATION
-------------

The optional configuration variable `core.excludesFile` indicates a path to a
file containing patterns of file names to exclude from git-add, similar to
$GIT_DIR/info/exclude. Patterns in the exclude file are used in addition to
those in info/exclude. See linkgit:gitignore[5].


EXAMPLES
--------

Expand Down
Loading

0 comments on commit df13b00

Please sign in to comment.