From a54c07bc496a24da621d7a6774d22215e1cf3155 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Wed, 20 Nov 2024 15:42:23 +0900 Subject: [PATCH] Autogenerated HTML docs for v2.47.0-305-g4083a --- DecisionMaking.html | 2 +- MyFirstContribution.html | 2 +- MyFirstObjectWalk.html | 2 +- RelNotes/2.47.1.txt | 26 ++++++ RelNotes/2.48.0.txt | 15 ++-- ReviewingGuidelines.html | 2 +- SubmittingPatches.html | 2 +- ToolsForGit.html | 2 +- everyday.html | 2 +- git-add.html | 120 +++++++++++++-------------- git-add.txt | 111 +++++++++++++------------ git-config.html | 16 ++-- git-index-pack.html | 8 +- git-index-pack.txt | 5 ++ git-remote-helpers.html | 2 +- howto/keep-canonical-history-correct.html | 4 +- howto/maintain-git.html | 4 +- howto/new-command.html | 4 +- howto/rebase-from-internal-branch.html | 4 +- howto/rebuild-from-update-hook.html | 4 +- howto/recover-corrupted-blob-object.html | 4 +- howto/recover-corrupted-object-harder.html | 4 +- howto/revert-a-faulty-merge.html | 4 +- howto/revert-branch-rebase.html | 4 +- howto/separating-topic-branches.html | 4 +- howto/setup-git-server-over-http.html | 4 +- howto/update-hook-example.html | 4 +- howto/use-git-daemon.html | 4 +- howto/using-merge-subtree.html | 4 +- howto/using-signed-tag-in-pull-request.html | 4 +- technical/api-error-handling.html | 2 +- technical/api-index.html | 2 +- technical/api-merge.html | 2 +- technical/api-parse-options.html | 2 +- technical/api-simple-ipc.html | 2 +- technical/api-trace2.html | 2 +- technical/bitmap-format.html | 2 +- technical/bundle-uri.html | 2 +- technical/hash-function-transition.html | 2 +- technical/long-running-process-protocol.html | 2 +- technical/multi-pack-index.html | 2 +- technical/pack-heuristics.html | 2 +- technical/parallel-checkout.html | 2 +- technical/partial-clone.html | 2 +- technical/platform-support.html | 2 +- technical/racy-git.html | 2 +- technical/scalar.html | 2 +- technical/send-pack-pipeline.html | 2 +- technical/shallow.html | 2 +- technical/trivial-merge.html | 2 +- technical/unit-tests.html | 2 +- 51 files changed, 231 insertions(+), 188 deletions(-) create mode 100644 RelNotes/2.47.1.txt diff --git a/DecisionMaking.html b/DecisionMaking.html index 7b278f5d..d2f9bdea 100644 --- a/DecisionMaking.html +++ b/DecisionMaking.html @@ -442,7 +442,7 @@ pre>code {
diff --git a/MyFirstContribution.html b/MyFirstContribution.html index cce7aba5..c3c8d195 100644 --- a/MyFirstContribution.html +++ b/MyFirstContribution.html @@ -442,7 +442,7 @@ pre>code {
diff --git a/MyFirstObjectWalk.html b/MyFirstObjectWalk.html index 7ff6e3da..386e5a85 100644 --- a/MyFirstObjectWalk.html +++ b/MyFirstObjectWalk.html @@ -442,7 +442,7 @@ pre>code {
diff --git a/RelNotes/2.47.1.txt b/RelNotes/2.47.1.txt new file mode 100644 index 00000000..6d7a4d98 --- /dev/null +++ b/RelNotes/2.47.1.txt @@ -0,0 +1,26 @@ +Git 2.47.1 Release Notes +======================== + +This is to flush accumulated fixes since 2.47.0 on the 'master' +front down to the maintenance track. + + +Fixes since Git 2.47 +-------------------- + + * Use after free and double freeing at the end in "git log -L... -p" + had been identified and fixed. + + * On macOS, fsmonitor can fall into a race condition that results in + a client waiting forever to be notified for an event that have + already happened. This problem has been corrected. + + * "git maintenance start" crashed due to an uninitialized variable + reference, which has been corrected. + + * Fail gracefully instead of crashing when attempting to write the + contents of a corrupt in-core index as a tree object. + + * A "git fetch" from the superproject going down to a submodule used + a wrong remote when the default remote names are set differently + between them. diff --git a/RelNotes/2.48.0.txt b/RelNotes/2.48.0.txt index 8eb6f81d..33f297cc 100644 --- a/RelNotes/2.48.0.txt +++ b/RelNotes/2.48.0.txt @@ -78,6 +78,10 @@ Performance, Internal Implementation, Development Support etc. * Buildfix and upgrade of Clar to a newer version. + * Documentation mark-up updates. + + * Renaming a handful of variables and structure fields. + Fixes since v2.47 ----------------- @@ -88,25 +92,20 @@ Fixes since v2.47 * Use after free and double freeing at the end in "git log -L... -p" had been identified and fixed. - (merge fc5589d6c1 ds/line-log-asan-fix later to maint). * On macOS, fsmonitor can fall into a race condition that results in a client waiting forever to be notified for an event that have already happened. This problem has been corrected. - (merge 51907f8fee jk/fsmonitor-event-listener-race-fix later to maint). * "git maintenance start" crashed due to an uninitialized variable reference, which has been corrected. - (merge c95547a394 ps/maintenance-start-crash-fix later to maint). * Fail gracefully instead of crashing when attempting to write the contents of a corrupt in-core index as a tree object. - (merge ecb5c4318c ps/cache-tree-w-broken-index-entry later to maint). * A "git fetch" from the superproject going down to a submodule used a wrong remote when the default remote names are set differently between them. - (merge 0c1a9987da db/submodule-fetch-with-remote-name-fix later to maint). * Fixes compile time warnings with 64-bit MSVC. @@ -140,6 +139,12 @@ Fixes since v2.47 semantics for atomic renames when other process(es) have a file opened at the destination path. + * "git gc" discards any objects that are outside promisor packs that + are referred to by an object in a promisor pack, and we do not + refetch them from the promisor at runtime, resulting an unusable + repository. Work it around by including these objects in the + referring promisor pack at the receiving end of the fetch. + * Other code cleanup, docfix, build fix, etc. (merge 1164e270b5 jk/output-prefix-cleanup later to maint). (merge f36b8cbaef jh/config-unset-doc-fix later to maint). diff --git a/ReviewingGuidelines.html b/ReviewingGuidelines.html index 75bb3ade..4d799480 100644 --- a/ReviewingGuidelines.html +++ b/ReviewingGuidelines.html @@ -442,7 +442,7 @@ pre>code {
diff --git a/SubmittingPatches.html b/SubmittingPatches.html index 6cb109ca..cfaa3140 100644 --- a/SubmittingPatches.html +++ b/SubmittingPatches.html @@ -442,7 +442,7 @@ pre>code {
diff --git a/ToolsForGit.html b/ToolsForGit.html index 6d5b31c4..4acd07b8 100644 --- a/ToolsForGit.html +++ b/ToolsForGit.html @@ -442,7 +442,7 @@ pre>code {
diff --git a/everyday.html b/everyday.html index b30af382..0802d9af 100644 --- a/everyday.html +++ b/everyday.html @@ -442,7 +442,7 @@ pre>code {
diff --git a/git-add.html b/git-add.html index 829f3993..8868b3c6 100644 --- a/git-add.html +++ b/git-add.html @@ -451,11 +451,11 @@ pre>code {

SYNOPSIS

-
git add [--verbose | -v] [--dry-run | -n] [--force | -f] [--interactive | -i] [--patch | -p]
-          [--edit | -e] [--[no-]all | -A | --[no-]ignore-removal | [--update | -u]] [--sparse]
-          [--intent-to-add | -N] [--refresh] [--ignore-errors] [--ignore-missing] [--renormalize]
-          [--chmod=(+|-)x] [--pathspec-from-file=<file> [--pathspec-file-nul]]
-          [--] [<pathspec>…​]
+
git add [--verbose | -v] [--dry-run | -n] [--force | -f] [--interactive | -i] [--patch | -p]
+	[--edit | -e] [--[no-]all | -A | --[no-]ignore-removal | [--update | -u]] [--sparse]
+	[--intent-to-add | -N] [--refresh] [--ignore-errors] [--ignore-missing] [--renormalize]
+	[--chmod=(+|-)x] [--pathspec-from-file=<file> [--pathspec-file-nul]]
+	[--] [<pathspec>…​]
@@ -492,7 +492,7 @@ files have changes that are staged for the next commit.

ignored files were explicitly specified on the command line, git add will fail with a list of ignored files. Ignored files reached by directory recursion or filename globbing performed by Git (quote your -globs before the shell) will be silently ignored. The git add command can +globs before the shell) will be silently ignored. The git add command can be used to add ignored files with the -f (force) option.

@@ -506,7 +506,7 @@ commit.

-
<pathspec>…​
+
<pathspec>...

Files to add content from. Fileglobs (e.g. *.c) can be given to add all matching files. Also a @@ -524,23 +524,23 @@ to add modified or new files but ignore removed ones.

in gitglossary(7).

-
-n
-
--dry-run
+
-n
+
--dry-run

Don’t actually add the file(s), just show if they exist and/or will be ignored.

-
-v
-
--verbose
+
-v
+
--verbose

Be verbose.

-
-f
-
--force
+
-f
+
--force

Allow adding otherwise ignored files.

-
--sparse
+
--sparse

Allow updating index entries outside of the sparse-checkout cone. Normally, git add refuses to update index entries whose paths do @@ -548,16 +548,16 @@ not fit within the sparse-checkout cone, since those files might be removed from the working tree without warning. See git-sparse-checkout(1) for more details.

-
-i
-
--interactive
+
-i
+
--interactive

Add modified contents in the working tree interactively to the index. Optional path arguments may be supplied to limit operation to a subset of the working tree. See “Interactive mode” for details.

-
-p
-
--patch
+
-p
+
--patch

Interactively choose hunks of patch between the index and the work tree and add them to the index. This gives the user a chance @@ -569,8 +569,8 @@ initial command menu and directly jumps to the patch subcommand. See “Interactive mode” for details.

-
-e
-
--edit
+
-e
+
--edit

Open the diff vs. the index in an editor and let the user edit it. After the editor was closed, adjust the hunk headers @@ -583,8 +583,8 @@ However, it is easy to confuse oneself and create a patch that does not apply to the index. See EDITING PATCHES below.

-
-u
-
--update
+
-u
+
--update

Update the index just where it already has an entry matching <pathspec>. This removes as well as modifies index entries to @@ -596,9 +596,9 @@ of Git used to limit the update to the current directory and its subdirectories).

-
-A
-
--all
-
--no-ignore-removal
+
-A
+
--all
+
--no-ignore-removal

Update the index not only where the working tree has a file matching <pathspec> but also where the index already has an @@ -611,8 +611,8 @@ of Git used to limit the update to the current directory and its subdirectories).

-
--no-all
-
--ignore-removal
+
--no-all
+
--ignore-removal

Update the index by adding new files that are unknown to the index and files modified in the working tree, but ignore @@ -620,12 +620,12 @@ files that have been removed from the working tree. This option is a no-op when no <pathspec> is used.

This option is primarily to help users who are used to older -versions of Git, whose "git add <pathspec>…​" was a synonym -for "git add --no-all <pathspec>…​", i.e. ignored removed files.

+versions of Git, whose git add <pathspec>... was a synonym +for git add --no-all <pathspec>..., i.e. ignored removed files.

-
-N
-
--intent-to-add
+
-N
+
--intent-to-add

Record only the fact that the path will be added later. An entry for the path is placed in the index with no content. This is @@ -633,12 +633,12 @@ useful for, among other things, showing the unstaged content of such files with git diff and committing them with git commit -a.

-
--refresh
+
--refresh

Don’t add the file(s), but only refresh their stat() information in the index.

-
--ignore-errors
+
--ignore-errors

If some files could not be added because of errors indexing them, do not abort the operation, but continue adding the @@ -646,14 +646,14 @@ others. The command shall still exit with non-zero status. The configuration variable add.ignoreErrors can be set to true to make this the default behaviour.

-
--ignore-missing
+
--ignore-missing
-

This option can only be used together with --dry-run. By using +

This option can only be used together with --dry-run. By using this option the user can check if any of the given files would be ignored, no matter if they are already present in the work tree or not.

-
--no-warn-embedded-repo
+
--no-warn-embedded-repo

By default, git add will warn when adding an embedded repository to the index without using git submodule add to @@ -661,38 +661,38 @@ create an entry in .gitmodules. This option will suppress the warning (e.g., if you are manually performing operations on submodules).

-
--renormalize
+
--renormalize

Apply the "clean" process freshly to all tracked files to forcibly add them again to the index. This is useful after changing core.autocrlf configuration or the text attribute -in order to correct files added with wrong CRLF/LF line endings. +in order to correct files added with wrong CRLF/LF line endings. This option implies -u. Lone CR characters are untouched, thus -while a CRLF cleans to LF, a CRCRLF sequence is only partially -cleaned to CRLF.

+while a CRLF cleans to LF, a CRCRLF sequence is only partially +cleaned to CRLF.

-
--chmod=(+|-)x
+
--chmod=(+|-)x

Override the executable bit of the added files. The executable bit is only changed in the index, the files on disk are left unchanged.

-
--pathspec-from-file=<file>
+
--pathspec-from-file=<file>

Pathspec is passed in <file> instead of commandline args. If <file> is exactly - then standard input is used. Pathspec -elements are separated by LF or CR/LF. Pathspec elements can be +elements are separated by LF or CR/LF. Pathspec elements can be quoted as explained for the configuration variable core.quotePath (see git-config(1)). See also --pathspec-file-nul and global --literal-pathspecs.

-
--pathspec-file-nul
+
--pathspec-file-nul

Only meaningful with --pathspec-from-file. Pathspec elements are -separated with NUL character and all other characters are taken +separated with NUL character and all other characters are taken literally (including newlines and quotes).

-
--
+
--

This option can be used to separate command-line options from the list of files, (useful when filenames might be mistaken @@ -722,7 +722,7 @@ subdirectories of Documentation/ directory.

  • -

    Considers adding content from all git-*.sh scripts:

    +

    Considers adding content from all git-*.sh scripts:

    $ git add git-*.sh
    @@ -771,7 +771,7 @@ choice is unique.

    status
    -

    This shows the change between HEAD and index (i.e. what will be +

    This shows the change between HEAD and index (i.e. what will be committed if you say git commit), and between index and working tree files (i.e. what you could stage further before git commit using git add) for each path. A sample output @@ -784,12 +784,12 @@ looks like this:

    -

    It shows that foo.png has differences from HEAD (but that is +

    It shows that foo.png has differences from HEAD (but that is binary so line count cannot be shown) and there is no difference between indexed copy and the working tree version (if the working tree version were also different, binary would have been shown in place of nothing). The -other file, add-interactive.c, has 403 lines added +other file, add-interactive.c, has 403 lines added and 35 lines deleted if you commit what is in the index, but working tree file has further modifications (one addition and one deletion).

    @@ -878,7 +878,7 @@ variable interactive.singleKey to true.

    diff

    This lets you review what will be committed (i.e. between -HEAD and index).

    +HEAD and index).

    @@ -928,7 +928,7 @@ likely to introduce confusing changes to the index.

    that because the patch is applied only to the index and not the working tree, the working tree will appear to "undo" the change in the index. For example, introducing a new line into the index that is in neither -the HEAD nor the working tree will stage the new line for commit, but +the HEAD nor the working tree will stage the new line for commit, but the line will appear to be reverted in the working tree.

  • @@ -992,14 +992,14 @@ as what’s found there:

    -
    add.ignoreErrors
    -
    add.ignore-errors (deprecated)
    +
    add.ignoreErrors
    +
    add.ignore-errors (deprecated)
    -

    Tells git add to continue adding files when some files cannot be -added due to indexing errors. Equivalent to the --ignore-errors -option of git-add(1). add.ignore-errors is deprecated, -as it does not follow the usual naming convention for configuration -variables.

    +

    Tells git add to continue adding files when some files cannot be +added due to indexing errors. +Equivalent to the --ignore-errors option. +add.ignore-errors is deprecated, as it does not follow the usual +naming convention for configuration variables.

    @@ -1029,7 +1029,7 @@ variables.

    diff --git a/git-add.txt b/git-add.txt index aceaa025..5f2c3592 100644 --- a/git-add.txt +++ b/git-add.txt @@ -7,12 +7,12 @@ git-add - Add file contents to the index SYNOPSIS -------- -[verse] -'git add' [--verbose | -v] [--dry-run | -n] [--force | -f] [--interactive | -i] [--patch | -p] - [--edit | -e] [--[no-]all | -A | --[no-]ignore-removal | [--update | -u]] [--sparse] - [--intent-to-add | -N] [--refresh] [--ignore-errors] [--ignore-missing] [--renormalize] - [--chmod=(+|-)x] [--pathspec-from-file= [--pathspec-file-nul]] - [--] [...] +[synopsis] +git add [--verbose | -v] [--dry-run | -n] [--force | -f] [--interactive | -i] [--patch | -p] + [--edit | -e] [--[no-]all | -A | --[no-]ignore-removal | [--update | -u]] [--sparse] + [--intent-to-add | -N] [--refresh] [--ignore-errors] [--ignore-missing] [--renormalize] + [--chmod=(+|-)x] [--pathspec-from-file= [--pathspec-file-nul]] + [--] [...] DESCRIPTION ----------- @@ -41,7 +41,7 @@ The `git add` command will not add ignored files by default. If any ignored files were explicitly specified on the command line, `git add` will fail with a list of ignored files. Ignored files reached by directory recursion or filename globbing performed by Git (quote your -globs before the shell) will be silently ignored. The 'git add' command can +globs before the shell) will be silently ignored. The `git add` command can be used to add ignored files with the `-f` (force) option. Please see linkgit:git-commit[1] for alternative ways to add content to a @@ -50,7 +50,7 @@ commit. OPTIONS ------- -...:: +`...`:: Files to add content from. Fileglobs (e.g. `*.c`) can be given to add all matching files. Also a leading directory name (e.g. `dir` to add `dir/file1` @@ -66,35 +66,35 @@ OPTIONS For more details about the __ syntax, see the 'pathspec' entry in linkgit:gitglossary[7]. --n:: ---dry-run:: +`-n`:: +`--dry-run`:: Don't actually add the file(s), just show if they exist and/or will be ignored. --v:: ---verbose:: +`-v`:: +`--verbose`:: Be verbose. --f:: ---force:: +`-f`:: +`--force`:: Allow adding otherwise ignored files. ---sparse:: +`--sparse`:: Allow updating index entries outside of the sparse-checkout cone. Normally, `git add` refuses to update index entries whose paths do not fit within the sparse-checkout cone, since those files might be removed from the working tree without warning. See linkgit:git-sparse-checkout[1] for more details. --i:: ---interactive:: +`-i`:: +`--interactive`:: Add modified contents in the working tree interactively to the index. Optional path arguments may be supplied to limit operation to a subset of the working tree. See ``Interactive mode'' for details. --p:: ---patch:: +`-p`:: +`--patch`:: Interactively choose hunks of patch between the index and the work tree and add them to the index. This gives the user a chance to review the difference before adding modified contents to the @@ -104,8 +104,8 @@ This effectively runs `add --interactive`, but bypasses the initial command menu and directly jumps to the `patch` subcommand. See ``Interactive mode'' for details. --e:: ---edit:: +`-e`:: +`--edit`:: Open the diff vs. the index in an editor and let the user edit it. After the editor was closed, adjust the hunk headers and apply the patch to the index. @@ -116,8 +116,8 @@ quicker and more flexible than using the interactive hunk selector. However, it is easy to confuse oneself and create a patch that does not apply to the index. See EDITING PATCHES below. --u:: ---update:: +`-u`:: +`--update`:: Update the index just where it already has an entry matching __. This removes as well as modifies index entries to match the working tree, but adds no new files. @@ -127,9 +127,9 @@ tracked files in the entire working tree are updated (old versions of Git used to limit the update to the current directory and its subdirectories). --A:: ---all:: ---no-ignore-removal:: +`-A`:: +`--all`:: +`--no-ignore-removal`:: Update the index not only where the working tree has a file matching __ but also where the index already has an entry. This adds, modifies, and removes index entries to @@ -140,77 +140,77 @@ files in the entire working tree are updated (old versions of Git used to limit the update to the current directory and its subdirectories). ---no-all:: ---ignore-removal:: +`--no-all`:: +`--ignore-removal`:: Update the index by adding new files that are unknown to the index and files modified in the working tree, but ignore files that have been removed from the working tree. This option is a no-op when no __ is used. + This option is primarily to help users who are used to older -versions of Git, whose "git add __..." was a synonym -for "git add --no-all __...", i.e. ignored removed files. +versions of Git, whose `git add ...` was a synonym +for `git add --no-all ...`, i.e. ignored removed files. --N:: ---intent-to-add:: +`-N`:: +`--intent-to-add`:: Record only the fact that the path will be added later. An entry for the path is placed in the index with no content. This is useful for, among other things, showing the unstaged content of such files with `git diff` and committing them with `git commit -a`. ---refresh:: +`--refresh`:: Don't add the file(s), but only refresh their stat() information in the index. ---ignore-errors:: +`--ignore-errors`:: If some files could not be added because of errors indexing them, do not abort the operation, but continue adding the others. The command shall still exit with non-zero status. The configuration variable `add.ignoreErrors` can be set to true to make this the default behaviour. ---ignore-missing:: - This option can only be used together with --dry-run. By using +`--ignore-missing`:: + This option can only be used together with `--dry-run`. By using this option the user can check if any of the given files would be ignored, no matter if they are already present in the work tree or not. ---no-warn-embedded-repo:: +`--no-warn-embedded-repo`:: By default, `git add` will warn when adding an embedded repository to the index without using `git submodule add` to create an entry in `.gitmodules`. This option will suppress the warning (e.g., if you are manually performing operations on submodules). ---renormalize:: +`--renormalize`:: Apply the "clean" process freshly to all tracked files to forcibly add them again to the index. This is useful after changing `core.autocrlf` configuration or the `text` attribute - in order to correct files added with wrong CRLF/LF line endings. + in order to correct files added with wrong _CRLF/LF_ line endings. This option implies `-u`. Lone CR characters are untouched, thus - while a CRLF cleans to LF, a CRCRLF sequence is only partially - cleaned to CRLF. + while a _CRLF_ cleans to _LF_, a _CRCRLF_ sequence is only partially + cleaned to _CRLF_. ---chmod=(+|-)x:: +`--chmod=(+|-)x`:: Override the executable bit of the added files. The executable bit is only changed in the index, the files on disk are left unchanged. ---pathspec-from-file=:: +`--pathspec-from-file=`:: Pathspec is passed in __ instead of commandline args. If __ is exactly `-` then standard input is used. Pathspec - elements are separated by LF or CR/LF. Pathspec elements can be + elements are separated by _LF_ or _CR/LF_. Pathspec elements can be quoted as explained for the configuration variable `core.quotePath` (see linkgit:git-config[1]). See also `--pathspec-file-nul` and global `--literal-pathspecs`. ---pathspec-file-nul:: +`--pathspec-file-nul`:: Only meaningful with `--pathspec-from-file`. Pathspec elements are - separated with NUL character and all other characters are taken + separated with _NUL_ character and all other characters are taken literally (including newlines and quotes). -\--:: +`--`:: This option can be used to separate command-line options from the list of files, (useful when filenames might be mistaken for command-line options). @@ -219,18 +219,18 @@ for "git add --no-all __...", i.e. ignored removed files. EXAMPLES -------- -* Adds content from all `*.txt` files under `Documentation` directory +* Adds content from all ++*.txt++ files under `Documentation` directory and its subdirectories: + ------------ $ git add Documentation/\*.txt ------------ + -Note that the asterisk `*` is quoted from the shell in this +Note that the asterisk ++*++ is quoted from the shell in this example; this lets the command include the files from subdirectories of `Documentation/` directory. -* Considers adding content from all git-*.sh scripts: +* Considers adding content from all ++git-*.sh++ scripts: + ------------ $ git add git-*.sh @@ -265,7 +265,7 @@ The main command loop has 6 subcommands (plus help and quit). status:: - This shows the change between HEAD and index (i.e. what will be + This shows the change between `HEAD` and index (i.e. what will be committed if you say `git commit`), and between index and working tree files (i.e. what you could stage further before `git commit` using `git add`) for each path. A sample output @@ -277,12 +277,12 @@ status:: 2: +403/-35 +1/-1 add-interactive.c ------------ + -It shows that foo.png has differences from HEAD (but that is +It shows that `foo.png` has differences from `HEAD` (but that is binary so line count cannot be shown) and there is no difference between indexed copy and the working tree version (if the working tree version were also different, 'binary' would have been shown in place of 'nothing'). The -other file, add-interactive.c, has 403 lines added +other file, `add-interactive.c`, has 403 lines added and 35 lines deleted if you commit what is in the index, but working tree file has further modifications (one addition and one deletion). @@ -360,7 +360,7 @@ variable `interactive.singleKey` to `true`. diff:: This lets you review what will be committed (i.e. between - HEAD and index). + `HEAD` and index). EDITING PATCHES @@ -399,7 +399,7 @@ There are also more complex operations that can be performed. But beware that because the patch is applied only to the index and not the working tree, the working tree will appear to "undo" the change in the index. For example, introducing a new line into the index that is in neither -the HEAD nor the working tree will stage the new line for commit, but +the `HEAD` nor the working tree will stage the new line for commit, but the line will appear to be reverted in the working tree. Avoid using these constructs, or do so with extreme caution. @@ -439,6 +439,7 @@ CONFIGURATION include::includes/cmd-config-section-all.txt[] +:git-add: 1 include::config/add.txt[] SEE ALSO diff --git a/git-config.html b/git-config.html index 7440e22b..f232c5a4 100644 --- a/git-config.html +++ b/git-config.html @@ -1699,14 +1699,14 @@ other popular tools, and describe them in your documentation.

    -
    add.ignoreErrors
    -
    add.ignore-errors (deprecated)
    -
    -

    Tells git add to continue adding files when some files cannot be -added due to indexing errors. Equivalent to the --ignore-errors -option of git-add(1). add.ignore-errors is deprecated, -as it does not follow the usual naming convention for configuration -variables.

    +
    add.ignoreErrors
    +
    add.ignore-errors (deprecated)
    +
    +

    Tells git add to continue adding files when some files cannot be +added due to indexing errors. +Equivalent to the --ignore-errors option of git-add(1). +add.ignore-errors is deprecated, as it does not follow the usual +naming convention for configuration variables.

    advice.*
    diff --git a/git-index-pack.html b/git-index-pack.html index dce628cf..e9f9a84d 100644 --- a/git-index-pack.html +++ b/git-index-pack.html @@ -621,6 +621,12 @@ since the name of the pack is not final until the pack has been fully written. If a <message> is provided, then that content will be written to the .promisor file for future reference. See partial clone for more information.

    +
    +

    Also, if there are objects in the given pack that references non-promisor +objects (in the repo), repacks those non-promisor objects into a promisor +pack. This avoids a situation in which a repo has non-promisor objects that are +accessible through promisor objects.

    +
    @@ -650,7 +656,7 @@ mentioned above.

    diff --git a/git-index-pack.txt b/git-index-pack.txt index 5a20deef..4be09e58 100644 --- a/git-index-pack.txt +++ b/git-index-pack.txt @@ -139,6 +139,11 @@ include::object-format-disclaimer.txt[] written. If a `` is provided, then that content will be written to the .promisor file for future reference. See link:technical/partial-clone.html[partial clone] for more information. ++ +Also, if there are objects in the given pack that references non-promisor +objects (in the repo), repacks those non-promisor objects into a promisor +pack. This avoids a situation in which a repo has non-promisor objects that are +accessible through promisor objects. NOTES ----- diff --git a/git-remote-helpers.html b/git-remote-helpers.html index c99cf26f..0361f275 100644 --- a/git-remote-helpers.html +++ b/git-remote-helpers.html @@ -442,7 +442,7 @@ pre>code {
    diff --git a/howto/keep-canonical-history-correct.html b/howto/keep-canonical-history-correct.html index be0750ed..6e5306f7 100644 --- a/howto/keep-canonical-history-correct.html +++ b/howto/keep-canonical-history-correct.html @@ -442,7 +442,7 @@ pre>code {
    @@ -705,7 +705,7 @@ tip of your master again and redo the two merges:

    diff --git a/howto/maintain-git.html b/howto/maintain-git.html index da44f4ca..933e7b07 100644 --- a/howto/maintain-git.html +++ b/howto/maintain-git.html @@ -442,7 +442,7 @@ pre>code {
    @@ -1326,7 +1326,7 @@ $ git update-ref -d $mf/ai/topic
    diff --git a/howto/new-command.html b/howto/new-command.html index 1fd90f29..35a7e959 100644 --- a/howto/new-command.html +++ b/howto/new-command.html @@ -442,7 +442,7 @@ pre>code {
    @@ -584,7 +584,7 @@ letter [PATCH 0/n].

    diff --git a/howto/rebase-from-internal-branch.html b/howto/rebase-from-internal-branch.html index f67f266e..ee42be15 100644 --- a/howto/rebase-from-internal-branch.html +++ b/howto/rebase-from-internal-branch.html @@ -442,7 +442,7 @@ pre>code {
    @@ -656,7 +656,7 @@ the #1' commit.

    diff --git a/howto/rebuild-from-update-hook.html b/howto/rebuild-from-update-hook.html index 081e60ee..d1bb6f14 100644 --- a/howto/rebuild-from-update-hook.html +++ b/howto/rebuild-from-update-hook.html @@ -442,7 +442,7 @@ pre>code {
    @@ -563,7 +563,7 @@ some locking mechanism for this.

    diff --git a/howto/recover-corrupted-blob-object.html b/howto/recover-corrupted-blob-object.html index 850d5ab8..4d07b92e 100644 --- a/howto/recover-corrupted-blob-object.html +++ b/howto/recover-corrupted-blob-object.html @@ -442,7 +442,7 @@ pre>code {
    @@ -641,7 +641,7 @@ thing.

    diff --git a/howto/recover-corrupted-object-harder.html b/howto/recover-corrupted-object-harder.html index 2ec97121..f58e5bbc 100644 --- a/howto/recover-corrupted-object-harder.html +++ b/howto/recover-corrupted-object-harder.html @@ -442,7 +442,7 @@ pre>code {
    @@ -967,7 +967,7 @@ int main(int argc, char **argv)
    diff --git a/howto/revert-a-faulty-merge.html b/howto/revert-a-faulty-merge.html index 09a8e259..43c9349a 100644 --- a/howto/revert-a-faulty-merge.html +++ b/howto/revert-a-faulty-merge.html @@ -442,7 +442,7 @@ pre>code {
    @@ -829,7 +829,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 f465a2f9..3c1c219e 100644 --- a/howto/revert-branch-rebase.html +++ b/howto/revert-branch-rebase.html @@ -442,7 +442,7 @@ pre>code {
    @@ -649,7 +649,7 @@ Committed merge 7fb9b7262a1d1e0a47bbfdcbbcf50ce0635d3f8f
    diff --git a/howto/separating-topic-branches.html b/howto/separating-topic-branches.html index 61dc798b..20023186 100644 --- a/howto/separating-topic-branches.html +++ b/howto/separating-topic-branches.html @@ -442,7 +442,7 @@ pre>code {
    @@ -568,7 +568,7 @@ o---o"master"
    diff --git a/howto/setup-git-server-over-http.html b/howto/setup-git-server-over-http.html index 7715d4ad..2518938e 100644 --- a/howto/setup-git-server-over-http.html +++ b/howto/setup-git-server-over-http.html @@ -442,7 +442,7 @@ pre>code {
    @@ -882,7 +882,7 @@ help diagnosing the problem, but removes security checks.

    diff --git a/howto/update-hook-example.html b/howto/update-hook-example.html index 6ed29234..c00c07be 100644 --- a/howto/update-hook-example.html +++ b/howto/update-hook-example.html @@ -442,7 +442,7 @@ pre>code {
    @@ -648,7 +648,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 f31800b7..0daee679 100644 --- a/howto/use-git-daemon.html +++ b/howto/use-git-daemon.html @@ -442,7 +442,7 @@ pre>code {
    @@ -524,7 +524,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 bd313650..2e7b2599 100644 --- a/howto/using-merge-subtree.html +++ b/howto/using-merge-subtree.html @@ -442,7 +442,7 @@ pre>code {
    @@ -554,7 +554,7 @@ to.

    diff --git a/howto/using-signed-tag-in-pull-request.html b/howto/using-signed-tag-in-pull-request.html index baa65460..251164b6 100644 --- a/howto/using-signed-tag-in-pull-request.html +++ b/howto/using-signed-tag-in-pull-request.html @@ -442,7 +442,7 @@ pre>code {
    @@ -712,7 +712,7 @@ as part of the merge commit.

    diff --git a/technical/api-error-handling.html b/technical/api-error-handling.html index 54fef957..2e3a54d1 100644 --- a/technical/api-error-handling.html +++ b/technical/api-error-handling.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/api-index.html b/technical/api-index.html index 957c7fb9..289a4168 100644 --- a/technical/api-index.html +++ b/technical/api-index.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/api-merge.html b/technical/api-merge.html index c8ec4f76..f331be20 100644 --- a/technical/api-merge.html +++ b/technical/api-merge.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/api-parse-options.html b/technical/api-parse-options.html index f3085f39..59908aa5 100644 --- a/technical/api-parse-options.html +++ b/technical/api-parse-options.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/api-simple-ipc.html b/technical/api-simple-ipc.html index 7b909fd5..8534a7aa 100644 --- a/technical/api-simple-ipc.html +++ b/technical/api-simple-ipc.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/api-trace2.html b/technical/api-trace2.html index 758fcdc3..05295dc6 100644 --- a/technical/api-trace2.html +++ b/technical/api-trace2.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/bitmap-format.html b/technical/bitmap-format.html index b9882881..f06c3eb6 100644 --- a/technical/bitmap-format.html +++ b/technical/bitmap-format.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/bundle-uri.html b/technical/bundle-uri.html index 53a13963..8f344599 100644 --- a/technical/bundle-uri.html +++ b/technical/bundle-uri.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/hash-function-transition.html b/technical/hash-function-transition.html index cb4fac51..6ecf90b5 100644 --- a/technical/hash-function-transition.html +++ b/technical/hash-function-transition.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/long-running-process-protocol.html b/technical/long-running-process-protocol.html index a99966ba..a3194ca1 100644 --- a/technical/long-running-process-protocol.html +++ b/technical/long-running-process-protocol.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/multi-pack-index.html b/technical/multi-pack-index.html index b5f97142..74e40a68 100644 --- a/technical/multi-pack-index.html +++ b/technical/multi-pack-index.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/pack-heuristics.html b/technical/pack-heuristics.html index fe3a3ed0..55e21e64 100644 --- a/technical/pack-heuristics.html +++ b/technical/pack-heuristics.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/parallel-checkout.html b/technical/parallel-checkout.html index 28010016..64abd454 100644 --- a/technical/parallel-checkout.html +++ b/technical/parallel-checkout.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/partial-clone.html b/technical/partial-clone.html index 8e8c65f2..f4443ad6 100644 --- a/technical/partial-clone.html +++ b/technical/partial-clone.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/platform-support.html b/technical/platform-support.html index 097c8f96..b6076e58 100644 --- a/technical/platform-support.html +++ b/technical/platform-support.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/racy-git.html b/technical/racy-git.html index 763c63ff..31a3267b 100644 --- a/technical/racy-git.html +++ b/technical/racy-git.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/scalar.html b/technical/scalar.html index 29577d45..2616dee7 100644 --- a/technical/scalar.html +++ b/technical/scalar.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/send-pack-pipeline.html b/technical/send-pack-pipeline.html index b928ebd9..64c5cf62 100644 --- a/technical/send-pack-pipeline.html +++ b/technical/send-pack-pipeline.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/shallow.html b/technical/shallow.html index 2a87ccf1..0d2f0340 100644 --- a/technical/shallow.html +++ b/technical/shallow.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/trivial-merge.html b/technical/trivial-merge.html index 405ce721..d7d99c0e 100644 --- a/technical/trivial-merge.html +++ b/technical/trivial-merge.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    diff --git a/technical/unit-tests.html b/technical/unit-tests.html index 52186cdb..d605a6e8 100644 --- a/technical/unit-tests.html +++ b/technical/unit-tests.html @@ -437,7 +437,7 @@ body.book #toc,body.book #preamble,body.book h1.sect0,body.book .sect1>h2{page-b
    -- 2.11.4.GIT