From 3acb2e7b34954a141e76b0004a474d276bc86657 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Tue, 4 Apr 2023 16:19:06 -0700 Subject: Autogenerated HTML docs for v2.40.0-214-gae73b --- RelNotes/2.41.0.txt | 24 +++++++++++++++++ blame-options.txt | 10 ++++---- git-annotate.html | 10 ++++---- git-blame.html | 14 +++++----- git-blame.txt | 2 +- git-config.html | 15 +++++++++++ git-rebase.html | 40 ++++++++++++++++++++++------- git-rebase.txt | 19 +++++++++----- git-rev-list.html | 9 +++++-- howto/coordinate-embargoed-releases.html | 2 +- howto/keep-canonical-history-correct.html | 2 +- howto/maintain-git.html | 2 +- howto/new-command.html | 2 +- howto/rebase-from-internal-branch.html | 2 +- howto/rebuild-from-update-hook.html | 2 +- howto/recover-corrupted-blob-object.html | 2 +- howto/recover-corrupted-object-harder.html | 2 +- howto/revert-a-faulty-merge.html | 2 +- howto/revert-branch-rebase.html | 2 +- howto/separating-topic-branches.html | 2 +- howto/setup-git-server-over-http.html | 2 +- howto/update-hook-example.html | 2 +- howto/use-git-daemon.html | 2 +- howto/using-merge-subtree.html | 2 +- howto/using-signed-tag-in-pull-request.html | 2 +- rev-list-options.txt | 9 +++++-- 26 files changed, 130 insertions(+), 54 deletions(-) diff --git a/RelNotes/2.41.0.txt b/RelNotes/2.41.0.txt index fa2cb4b45..1e9b6a66e 100644 --- a/RelNotes/2.41.0.txt +++ b/RelNotes/2.41.0.txt @@ -38,6 +38,13 @@ UI, Workflows & Features * Lift the limitation that colored prompts can only be used with PROMPT_COMMAND mode. + * "git blame --contents= -- " used to be forbidden, + but now it finds the origins of lines starting at contents + through the history that leads to . + + * "git pack-redundant" gave a warning when run, as the command has + outlived its usefulness long ago and is nominated for future + removal. Now we escalate to give an error. Performance, Internal Implementation, Development Support etc. @@ -135,6 +142,19 @@ Fixes since v2.40 been disabled to work around the bug. (merge 14b9a04479 mk/workaround-pcre-jit-ucp-bug later to maint). + * The wildmatch library code unlearns exponential behaviour it + acquired some time ago since it was borrowed from rsync. + (merge 3dc0b7f0dc pw/wildmatch-fixes later to maint). + + * The index files can become corrupt under certain conditions when + the split-index feature is in use, especially together with + fsmonitor, which have been corrected. + (merge 061dd722dc js/split-index-fixes later to maint). + + * Document what the pathname-looking strings in "rev-list --object" + output are for and what they mean. + (merge 15364d2a3c jk/document-rev-list-object-name later to maint). + * Other code cleanup, docfix, build fix, etc. (merge f7111175df as/doc-markup-fix later to maint). (merge 90ff7c9898 fc/test-aggregation-clean-up later to maint). @@ -143,3 +163,7 @@ Fixes since v2.40 (merge 3457b50e8c ab/retire-scripted-add-p later to maint). (merge d52fcf493b ds/p2000-fix-grep-sparse later to maint). (merge ec063d2591 ss/hashmap-typofix later to maint). + (merge 1aaed69d11 rs/archive-mtime later to maint). + (merge 2da2cc9b28 ob/rollback-after-commit-lock-failure later to maint). + (merge 54dbd0933b ob/sequencer-save-head-simplify later to maint). + (merge a93cbe8d78 ar/test-cleanup-unused-file-creation later to maint). diff --git a/blame-options.txt b/blame-options.txt index 9a663535f..95599bd6e 100644 --- a/blame-options.txt +++ b/blame-options.txt @@ -64,11 +64,11 @@ include::line-range-format.txt[] manual page. --contents :: - When is not specified, the command annotates the - changes starting backwards from the working tree copy. - This flag makes the command pretend as if the working - tree copy has the contents of the named file (specify - `-` to make the command read from the standard input). + Pretend the file being annotated has a commit with the + contents from the named file and a parent of , + defaulting to HEAD when no is specified. You may + specify '-' to make the command read from the standard + input for the file contents. --date :: Specifies the format used to output dates. If --date is not diff --git a/git-annotate.html b/git-annotate.html index 054cf1170..3f82bf6f7 100644 --- a/git-annotate.html +++ b/git-annotate.html @@ -941,11 +941,11 @@ in gitattributes(5)).

- When <rev> is not specified, the command annotates the - changes starting backwards from the working tree copy. - This flag makes the command pretend as if the working - tree copy has the contents of the named file (specify - - to make the command read from the standard input). + Pretend the file being annotated has a commit with the + contents from the named file and a parent of <rev>, + defaulting to HEAD when no <rev> is specified. You may + specify - to make the command read from the standard + input for the file contents.

diff --git a/git-blame.html b/git-blame.html index cb1eca644..1cd7bfbf4 100644 --- a/git-blame.html +++ b/git-blame.html @@ -753,7 +753,7 @@ git-blame(1) Manual Page [-L <range>] [-S <revs-file>] [-M] [-C] [-C] [-C] [--since=<date>] [--ignore-rev <rev>] [--ignore-revs-file <file>] [--color-lines] [--color-by-age] [--progress] [--abbrev=<n>] - [<rev> | --contents <file> | --reverse <rev>..<rev>] [--] <file> + [ --contents <file> ] [<rev> | --reverse <rev>..<rev>] [--] <file>
@@ -963,11 +963,11 @@ in gitattributes(5)).

- When <rev> is not specified, the command annotates the - changes starting backwards from the working tree copy. - This flag makes the command pretend as if the working - tree copy has the contents of the named file (specify - - to make the command read from the standard input). + Pretend the file being annotated has a commit with the + contents from the named file and a parent of <rev>, + defaulting to HEAD when no <rev> is specified. You may + specify - to make the command read from the standard + input for the file contents.

@@ -1500,7 +1500,7 @@ blame.markIgnoredLines diff --git a/git-blame.txt b/git-blame.txt index 4400a1733..f69a871a9 100644 --- a/git-blame.txt +++ b/git-blame.txt @@ -12,7 +12,7 @@ SYNOPSIS [-L ] [-S ] [-M] [-C] [-C] [-C] [--since=] [--ignore-rev ] [--ignore-revs-file ] [--color-lines] [--color-by-age] [--progress] [--abbrev=] - [ | --contents | --reverse ..] [--] + [ --contents ] [ | --reverse ..] [--] DESCRIPTION ----------- diff --git a/git-config.html b/git-config.html index 5988cbb6d..5b66fef78 100644 --- a/git-config.html +++ b/git-config.html @@ -9595,6 +9595,21 @@ rebase.forkPoint

+rebase.rebaseMerges +
+
+

+ Whether and how to set the --rebase-merges option by default. Can + be rebase-cousins, no-rebase-cousins, or a boolean. Setting to + true or to no-rebase-cousins is equivalent to + --rebase-merges=no-rebase-cousins, setting to rebase-cousins is + equivalent to --rebase-merges=rebase-cousins, and setting to false is + equivalent to --no-rebase-merges. Passing --rebase-merges on the + command line, with or without an argument, overrides any + rebase.rebaseMerges configuration. +

+
+
receive.advertiseAtomic
diff --git a/git-rebase.html b/git-rebase.html index 764a3458f..345b408a8 100644 --- a/git-rebase.html +++ b/git-rebase.html @@ -1467,6 +1467,9 @@ have the long commit hash prepended to the format.

--rebase-merges[=(rebase-cousins|no-rebase-cousins)]
+
+--no-rebase-merges +

By default, a rebase will simply drop merge commits from the todo @@ -1475,14 +1478,18 @@ have the long commit hash prepended to the format.

the branching structure within the commits that are to be rebased, by recreating the merge commits. Any resolved merge conflicts or manual amendments in these merge commits will have to be - resolved/re-applied manually. -

-

By default, or when no-rebase-cousins was specified, commits which do not -have <upstream> as direct ancestor will keep their original branch point, -i.e. commits that would be excluded by git-log(1)'s ---ancestry-path option will keep their original ancestry by default. If -the rebase-cousins mode is turned on, such commits are instead rebased -onto <upstream> (or <onto>, if specified).

+ resolved/re-applied manually. --no-rebase-merges can be used to + countermand both the rebase.rebaseMerges config option and a previous + --rebase-merges. +

+

When rebasing merges, there are two modes: rebase-cousins and +no-rebase-cousins. If the mode is not specified, it defaults to +no-rebase-cousins. In no-rebase-cousins mode, commits which do not have +<upstream> as direct ancestor will keep their original branch point, i.e. +commits that would be excluded by git-log(1)'s --ancestry-path +option will keep their original ancestry by default. In rebase-cousins mode, +such commits are instead rebased onto <upstream> (or <onto>, if +specified).

It is currently only possible to recreate the merge commits using the ort merge strategy; different merge strategies can be used only via explicit exec git merge -s <strategy> [...] commands.

@@ -2746,6 +2753,21 @@ rebase.forkPoint

+rebase.rebaseMerges +
+
+

+ Whether and how to set the --rebase-merges option by default. Can + be rebase-cousins, no-rebase-cousins, or a boolean. Setting to + true or to no-rebase-cousins is equivalent to + --rebase-merges=no-rebase-cousins, setting to rebase-cousins is + equivalent to --rebase-merges=rebase-cousins, and setting to false is + equivalent to --no-rebase-merges. Passing --rebase-merges on the + command line, with or without an argument, overrides any + rebase.rebaseMerges configuration. +

+
+
sequence.editor
@@ -2770,7 +2792,7 @@ sequence.editor diff --git a/git-rebase.txt b/git-rebase.txt index 9a295bcee..e7b39ad24 100644 --- a/git-rebase.txt +++ b/git-rebase.txt @@ -529,20 +529,25 @@ See also INCOMPATIBLE OPTIONS below. -r:: --rebase-merges[=(rebase-cousins|no-rebase-cousins)]:: +--no-rebase-merges:: By default, a rebase will simply drop merge commits from the todo list, and put the rebased commits into a single, linear branch. With `--rebase-merges`, the rebase will instead try to preserve the branching structure within the commits that are to be rebased, by recreating the merge commits. Any resolved merge conflicts or manual amendments in these merge commits will have to be - resolved/re-applied manually. + resolved/re-applied manually. `--no-rebase-merges` can be used to + countermand both the `rebase.rebaseMerges` config option and a previous + `--rebase-merges`. + -By default, or when `no-rebase-cousins` was specified, commits which do not -have `` as direct ancestor will keep their original branch point, -i.e. commits that would be excluded by linkgit:git-log[1]'s -`--ancestry-path` option will keep their original ancestry by default. If -the `rebase-cousins` mode is turned on, such commits are instead rebased -onto `` (or ``, if specified). +When rebasing merges, there are two modes: `rebase-cousins` and +`no-rebase-cousins`. If the mode is not specified, it defaults to +`no-rebase-cousins`. In `no-rebase-cousins` mode, commits which do not have +`` as direct ancestor will keep their original branch point, i.e. +commits that would be excluded by linkgit:git-log[1]'s `--ancestry-path` +option will keep their original ancestry by default. In `rebase-cousins` mode, +such commits are instead rebased onto `` (or ``, if +specified). + It is currently only possible to recreate the merge commits using the `ort` merge strategy; different merge strategies can be used only via diff --git a/git-rev-list.html b/git-rev-list.html index 3ce99e5c0..1d51c84e8 100644 --- a/git-rev-list.html +++ b/git-rev-list.html @@ -2061,7 +2061,7 @@ together.

Print the object IDs of any object referenced by the listed commits. --objects foo ^bar thus means “send me all object IDs which I need to download if I have the commit - object bar but not foo”. + object bar but not foo”. See also --object-names below.

@@ -2121,7 +2121,12 @@ together.

Only useful with --objects; print the names of the object IDs - that are found. This is the default behavior. + that are found. This is the default behavior. Note that the + "name" of each object is ambiguous, and mostly intended as a + hint for packing objects. In particular: no distinction is made between + the names of tags, trees, and blobs; path names may be modified + to remove newlines; and if an object would appear multiple times + with different names, only one name is shown.

diff --git a/howto/coordinate-embargoed-releases.html b/howto/coordinate-embargoed-releases.html index 43696f3c7..dcd920c3d 100644 --- a/howto/coordinate-embargoed-releases.html +++ b/howto/coordinate-embargoed-releases.html @@ -1038,7 +1038,7 @@ Thanks, diff --git a/howto/keep-canonical-history-correct.html b/howto/keep-canonical-history-correct.html index 575624eb1..b2e6b75b2 100644 --- a/howto/keep-canonical-history-correct.html +++ b/howto/keep-canonical-history-correct.html @@ -938,7 +938,7 @@ tip of your master again and redo the two merges:

diff --git a/howto/maintain-git.html b/howto/maintain-git.html index 56fbc718c..14f30acaf 100644 --- a/howto/maintain-git.html +++ b/howto/maintain-git.html @@ -1478,7 +1478,7 @@ $ git update-ref -d $mf/ai/topic diff --git a/howto/new-command.html b/howto/new-command.html index e1cafc79a..6448f189b 100644 --- a/howto/new-command.html +++ b/howto/new-command.html @@ -863,7 +863,7 @@ letter [PATCH 0/n]. diff --git a/howto/rebase-from-internal-branch.html b/howto/rebase-from-internal-branch.html index ccc26875c..ab3d34646 100644 --- a/howto/rebase-from-internal-branch.html +++ b/howto/rebase-from-internal-branch.html @@ -895,7 +895,7 @@ the #1' commit.

diff --git a/howto/rebuild-from-update-hook.html b/howto/rebuild-from-update-hook.html index fedf2a9e7..3b94545d9 100644 --- a/howto/rebuild-from-update-hook.html +++ b/howto/rebuild-from-update-hook.html @@ -847,7 +847,7 @@ This is still crude and does not protect against simultaneous diff --git a/howto/recover-corrupted-blob-object.html b/howto/recover-corrupted-blob-object.html index 8c459176f..75c2b0ee5 100644 --- a/howto/recover-corrupted-blob-object.html +++ b/howto/recover-corrupted-blob-object.html @@ -880,7 +880,7 @@ thing.

diff --git a/howto/recover-corrupted-object-harder.html b/howto/recover-corrupted-object-harder.html index 5a79ec044..cfae755bc 100644 --- a/howto/recover-corrupted-object-harder.html +++ b/howto/recover-corrupted-object-harder.html @@ -1189,7 +1189,7 @@ int main(int argc, char **argv) diff --git a/howto/revert-a-faulty-merge.html b/howto/revert-a-faulty-merge.html index bf8196cb0..c4939952f 100644 --- a/howto/revert-a-faulty-merge.html +++ b/howto/revert-a-faulty-merge.html @@ -1025,7 +1025,7 @@ P---o---o---M---x---x---W---x---M2 diff --git a/howto/revert-branch-rebase.html b/howto/revert-branch-rebase.html index 58080cd0a..99c99d7c0 100644 --- a/howto/revert-branch-rebase.html +++ b/howto/revert-branch-rebase.html @@ -907,7 +907,7 @@ Committed merge 7fb9b7262a1d1e0a47bbfdcbbcf50ce0635d3f8f diff --git a/howto/separating-topic-branches.html b/howto/separating-topic-branches.html index f8940322f..b55df27c8 100644 --- a/howto/separating-topic-branches.html +++ b/howto/separating-topic-branches.html @@ -841,7 +841,7 @@ o---o"master" diff --git a/howto/setup-git-server-over-http.html b/howto/setup-git-server-over-http.html index 0f0cac679..028ccaa76 100644 --- a/howto/setup-git-server-over-http.html +++ b/howto/setup-git-server-over-http.html @@ -1071,7 +1071,7 @@ help diagnosing the problem, but removes security checks.

diff --git a/howto/update-hook-example.html b/howto/update-hook-example.html index 655f22e1e..f653bf6ce 100644 --- a/howto/update-hook-example.html +++ b/howto/update-hook-example.html @@ -930,7 +930,7 @@ that JC can make non-fast-forward pushes on it.

diff --git a/howto/use-git-daemon.html b/howto/use-git-daemon.html index a788bcbaa..ef014c36c 100644 --- a/howto/use-git-daemon.html +++ b/howto/use-git-daemon.html @@ -791,7 +791,7 @@ a good practice to put the paths after a "--" separator.

diff --git a/howto/using-merge-subtree.html b/howto/using-merge-subtree.html index 0eb8b0baf..d3dda1331 100644 --- a/howto/using-merge-subtree.html +++ b/howto/using-merge-subtree.html @@ -848,7 +848,7 @@ Please note that if the other project merges from you, then it will diff --git a/howto/using-signed-tag-in-pull-request.html b/howto/using-signed-tag-in-pull-request.html index 7f6ad88c0..c70be7be5 100644 --- a/howto/using-signed-tag-in-pull-request.html +++ b/howto/using-signed-tag-in-pull-request.html @@ -952,7 +952,7 @@ as part of the merge commit.

diff --git a/rev-list-options.txt b/rev-list-options.txt index 90c73d670..3000888a9 100644 --- a/rev-list-options.txt +++ b/rev-list-options.txt @@ -890,7 +890,7 @@ ifdef::git-rev-list[] Print the object IDs of any object referenced by the listed commits. `--objects foo ^bar` thus means ``send me all object IDs which I need to download if I have the commit - object _bar_ but not _foo_''. + object _bar_ but not _foo_''. See also `--object-names` below. --in-commit-order:: Print tree and blob ids in order of the commits. The tree @@ -920,7 +920,12 @@ ifdef::git-rev-list[] --object-names:: Only useful with `--objects`; print the names of the object IDs - that are found. This is the default behavior. + that are found. This is the default behavior. Note that the + "name" of each object is ambiguous, and mostly intended as a + hint for packing objects. In particular: no distinction is made between + the names of tags, trees, and blobs; path names may be modified + to remove newlines; and if an object would appear multiple times + with different names, only one name is shown. --no-object-names:: Only useful with `--objects`; does not print the names of the object -- cgit 1.2.3-korg