From c416a71a462b776d9f3924af7dbfda8bd4f87bdf Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Thu, 28 Mar 2024 14:37:43 -0700 Subject: Autogenerated HTML docs for v2.44.0-413-gd6fd0 --- MyFirstContribution.html | 2 +- MyFirstObjectWalk.html | 2 +- RelNotes/2.45.0.txt | 18 ++++++++++++++ ReviewingGuidelines.html | 2 +- SubmittingPatches.html | 2 +- ToolsForGit.html | 2 +- diff-options.txt | 5 ++-- everyday.html | 2 +- git-commit.html | 6 +++-- git-commit.txt | 2 ++ git-config.html | 36 +++++++++++++++++++++++++++- git-diff-files.html | 5 ++-- git-diff-index.html | 5 ++-- git-diff-tree.html | 5 ++-- git-diff.html | 23 +++++++++++++++--- git-format-patch.html | 5 ++-- git-log.html | 5 ++-- git-remote-helpers.html | 2 +- git-rev-parse.html | 24 ++++++++++++++++++- git-rev-parse.txt | 12 ++++++++++ git-show.html | 5 ++-- git-status.html | 6 +++-- git-status.txt | 2 ++ howto/coordinate-embargoed-releases.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/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 +- user-manual.html | 2 +- 60 files changed, 200 insertions(+), 82 deletions(-) diff --git a/MyFirstContribution.html b/MyFirstContribution.html index 7e70fe020..dae31e748 100644 --- a/MyFirstContribution.html +++ b/MyFirstContribution.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/MyFirstObjectWalk.html b/MyFirstObjectWalk.html index 6fba5aca5..889fdfd24 100644 --- a/MyFirstObjectWalk.html +++ b/MyFirstObjectWalk.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/RelNotes/2.45.0.txt b/RelNotes/2.45.0.txt index 903c66596..cabdaf48b 100644 --- a/RelNotes/2.45.0.txt +++ b/RelNotes/2.45.0.txt @@ -45,6 +45,18 @@ UI, Workflows & Features * The output format for dates "iso-strict" has been tweaked to show a time in the Zulu timezone with "Z" suffix, instead of "+00:00". + * "git diff" and friends learned two extra configuration variables, + diff.srcPrefix and diff.dstPrefix. + + * The status.showUntrackedFiles configuration variable had a name + that tempts users to set a Boolean value expressed in our usual + "false", "off", and "0", but it only took "no". This has been + corrected so "true" and its synonyms are taken as "normal", while + "false" and its synonyms are taken as "no". + + * Remove an ancient and not well maintained Hg-to-git migration + script from contrib/. + Performance, Internal Implementation, Development Support etc. @@ -93,6 +105,12 @@ Performance, Internal Implementation, Development Support etc. * The code to iterate over reflogs in the reftable has been optimized to reduce memory allocation and deallocation. + * Work to support a repository that work with both SHA-1 and SHA-256 + hash algorithms has started. + + * A new fuzz target that exercises config parsing code has been + added. + Fixes since v2.44 ----------------- diff --git a/ReviewingGuidelines.html b/ReviewingGuidelines.html index 26012a506..263681834 100644 --- a/ReviewingGuidelines.html +++ b/ReviewingGuidelines.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/SubmittingPatches.html b/SubmittingPatches.html index 15dd239d4..a3bf5da63 100644 --- a/SubmittingPatches.html +++ b/SubmittingPatches.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/ToolsForGit.html b/ToolsForGit.html index 25fdc60f9..7a82ae560 100644 --- a/ToolsForGit.html +++ b/ToolsForGit.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/diff-options.txt b/diff-options.txt index aaaff0d46..0e9456957 100644 --- a/diff-options.txt +++ b/diff-options.txt @@ -865,8 +865,9 @@ endif::git-format-patch[] --default-prefix:: Use the default source and destination prefixes ("a/" and "b/"). - This is usually the default already, but may be used to override - config such as `diff.noprefix`. + This overrides configuration variables such as `diff.noprefix`, + `diff.srcPrefix`, `diff.dstPrefix`, and `diff.mnemonicPrefix` + (see `git-config`(1)). --line-prefix=:: Prepend an additional prefix to every line of output. diff --git a/everyday.html b/everyday.html index 46a7b5429..e889bef08 100644 --- a/everyday.html +++ b/everyday.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/git-commit.html b/git-commit.html index 992b1353a..5f02573ba 100644 --- a/git-commit.html +++ b/git-commit.html @@ -1348,7 +1348,9 @@ default is normal, i.e. show untracked files and directories.

-

The default can be changed using the status.showUntrackedFiles +

All usual spellings for Boolean value true are taken as normal +and false as no. +The default can be changed using the status.showUntrackedFiles configuration variable documented in git-config(1).

@@ -1840,7 +1842,7 @@ information.

diff --git a/git-commit.txt b/git-commit.txt index a6cef5d82..89ecfc63a 100644 --- a/git-commit.txt +++ b/git-commit.txt @@ -347,6 +347,8 @@ The possible options are: - 'normal' - Shows untracked files and directories - 'all' - Also shows individual files in untracked directories. +All usual spellings for Boolean value `true` are taken as `normal` +and `false` as `no`. The default can be changed using the status.showUntrackedFiles configuration variable documented in linkgit:git-config[1]. -- diff --git a/git-config.html b/git-config.html index 542229b30..3c638629a 100644 --- a/git-config.html +++ b/git-config.html @@ -4903,7 +4903,7 @@ diff.mnemonicPrefix
-diff.noprefix +diff.noPrefix

@@ -4911,6 +4911,22 @@ diff.noprefix

+diff.srcPrefix +
+
+

+ If set, git diff uses this source prefix. Defaults to "a/". +

+
+
+diff.dstPrefix +
+
+

+ If set, git diff uses this destination prefix. Defaults to "b/". +

+
+
diff.relative
@@ -5423,6 +5439,22 @@ extensions.objectFormat work and will produce hard-to-diagnose issues.

+extensions.compatObjectFormat +
+
+

+ Specify a compatitbility hash algorithm to use. The acceptable values + are sha1 and sha256. The value specified must be different from the + value of extensions.objectFormat. This allows client level + interoperability between git repositories whose objectFormat matches + this compatObjectFormat. In particular when fully implemented the + pushes and pulls from a repository in whose objectFormat matches + compatObjectFormat. As well as being able to use oids encoded in + compatObjectFormat in addition to oids encoded with objectFormat to + locally specify objects. +

+
+
extensions.refStorage
@@ -10982,6 +11014,8 @@ status.showUntrackedFiles

If this variable is not specified, it defaults to normal. +All usual spellings for Boolean value true are taken as normal +and false as no. This variable can be overridden with the -u|--untracked-files option of git-status(1) and git-commit(1).

diff --git a/git-diff-files.html b/git-diff-files.html index 357e16e15..53a210965 100644 --- a/git-diff-files.html +++ b/git-diff-files.html @@ -2024,8 +2024,9 @@ matches "fooasdfbar" and "foo/bar/baz/asdf" but not "<

Use the default source and destination prefixes ("a/" and "b/"). - This is usually the default already, but may be used to override - config such as diff.noprefix. + This overrides configuration variables such as diff.noprefix, + diff.srcPrefix, diff.dstPrefix, and diff.mnemonicPrefix + (see git-config(1)).

diff --git a/git-diff-index.html b/git-diff-index.html index 7f9d6901e..8ccf040b0 100644 --- a/git-diff-index.html +++ b/git-diff-index.html @@ -2025,8 +2025,9 @@ matches "fooasdfbar" and "foo/bar/baz/asdf" but not "<

Use the default source and destination prefixes ("a/" and "b/"). - This is usually the default already, but may be used to override - config such as diff.noprefix. + This overrides configuration variables such as diff.noprefix, + diff.srcPrefix, diff.dstPrefix, and diff.mnemonicPrefix + (see git-config(1)).

diff --git a/git-diff-tree.html b/git-diff-tree.html index 725398b78..4d2ab3629 100644 --- a/git-diff-tree.html +++ b/git-diff-tree.html @@ -2026,8 +2026,9 @@ matches "fooasdfbar" and "foo/bar/baz/asdf" but not "<

Use the default source and destination prefixes ("a/" and "b/"). - This is usually the default already, but may be used to override - config such as diff.noprefix. + This overrides configuration variables such as diff.noprefix, + diff.srcPrefix, diff.dstPrefix, and diff.mnemonicPrefix + (see git-config(1)).

diff --git a/git-diff.html b/git-diff.html index ead5a8cea..f10849177 100644 --- a/git-diff.html +++ b/git-diff.html @@ -2166,8 +2166,9 @@ matches "fooasdfbar" and "foo/bar/baz/asdf" but not "<

Use the default source and destination prefixes ("a/" and "b/"). - This is usually the default already, but may be used to override - config such as diff.noprefix. + This overrides configuration variables such as diff.noprefix, + diff.srcPrefix, diff.dstPrefix, and diff.mnemonicPrefix + (see git-config(1)).

@@ -3224,7 +3225,7 @@ diff.mnemonicPrefix
-diff.noprefix +diff.noPrefix

@@ -3232,6 +3233,22 @@ diff.noprefix

+diff.srcPrefix +
+
+

+ If set, git diff uses this source prefix. Defaults to "a/". +

+
+
+diff.dstPrefix +
+
+

+ If set, git diff uses this destination prefix. Defaults to "b/". +

+
+
diff.relative
diff --git a/git-format-patch.html b/git-format-patch.html index b069e3a1e..2e19e47b6 100644 --- a/git-format-patch.html +++ b/git-format-patch.html @@ -1606,8 +1606,9 @@ matches "fooasdfbar" and "foo/bar/baz/asdf" but not "<

Use the default source and destination prefixes ("a/" and "b/"). - This is usually the default already, but may be used to override - config such as diff.noprefix. + This overrides configuration variables such as diff.noprefix, + diff.srcPrefix, diff.dstPrefix, and diff.mnemonicPrefix + (see git-config(1)).

diff --git a/git-log.html b/git-log.html index 0df8f7716..600c6efaf 100644 --- a/git-log.html +++ b/git-log.html @@ -4954,8 +4954,9 @@ matches "fooasdfbar" and "foo/bar/baz/asdf" but not "<

Use the default source and destination prefixes ("a/" and "b/"). - This is usually the default already, but may be used to override - config such as diff.noprefix. + This overrides configuration variables such as diff.noprefix, + diff.srcPrefix, diff.dstPrefix, and diff.mnemonicPrefix + (see git-config(1)).

diff --git a/git-remote-helpers.html b/git-remote-helpers.html index 35bcab23a..877728df1 100644 --- a/git-remote-helpers.html +++ b/git-remote-helpers.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/git-rev-parse.html b/git-rev-parse.html index 632270b21..d50d9174f 100644 --- a/git-rev-parse.html +++ b/git-rev-parse.html @@ -1001,6 +1001,28 @@ for another option.

refnames (e.g. "refs/heads/master").

+
+--output-object-format=(sha1|sha256|storage) +
+
+

+ Allow oids to be input from any object format that the current + repository supports. +

+
+
+
Specifying "sha1" translates if necessary and returns a sha1 oid.
+
+
+
+
Specifying "sha256" translates if necessary and returns a sha256 oid.
+
+
+
+
Specifying "storage" translates if necessary and returns an oid in
+encoded in the storage hash algorithm.
+
+
@@ -2159,7 +2181,7 @@ Similar to above: diff --git a/git-rev-parse.txt b/git-rev-parse.txt index 5d83dd36d..f9d5a35fa 100644 --- a/git-rev-parse.txt +++ b/git-rev-parse.txt @@ -159,6 +159,18 @@ for another option. unfortunately named tag "master"), and shows them as full refnames (e.g. "refs/heads/master"). +--output-object-format=(sha1|sha256|storage):: + + Allow oids to be input from any object format that the current + repository supports. + + Specifying "sha1" translates if necessary and returns a sha1 oid. + + Specifying "sha256" translates if necessary and returns a sha256 oid. + + Specifying "storage" translates if necessary and returns an oid in + encoded in the storage hash algorithm. + Options for Objects ~~~~~~~~~~~~~~~~~~~ diff --git a/git-show.html b/git-show.html index cb418c994..89367cb5e 100644 --- a/git-show.html +++ b/git-show.html @@ -3406,8 +3406,9 @@ matches "fooasdfbar" and "foo/bar/baz/asdf" but not "<

Use the default source and destination prefixes ("a/" and "b/"). - This is usually the default already, but may be used to override - config such as diff.noprefix. + This overrides configuration variables such as diff.noprefix, + diff.srcPrefix, diff.dstPrefix, and diff.mnemonicPrefix + (see git-config(1)).

diff --git a/git-status.html b/git-status.html index f8cd29158..d67bdfe85 100644 --- a/git-status.html +++ b/git-status.html @@ -877,7 +877,9 @@ time in a large working tree. Consider enabling untracked cache and split index if supported (see git update-index --untracked-cache and git update-index --split-index), Otherwise you can use no to have git status -return more quickly without showing untracked files.

+return more quickly without showing untracked files. +All usual spellings for Boolean value true are taken as normal +and false as no.

The default can be changed using the status.showUntrackedFiles configuration variable documented in git-config(1).

@@ -1464,7 +1466,7 @@ normal.

diff --git a/git-status.txt b/git-status.txt index b0f36fabf..9a376886a 100644 --- a/git-status.txt +++ b/git-status.txt @@ -79,6 +79,8 @@ Consider enabling untracked cache and split index if supported (see `git update-index --untracked-cache` and `git update-index --split-index`), Otherwise you can use `no` to have `git status` return more quickly without showing untracked files. +All usual spellings for Boolean value `true` are taken as `normal` +and `false` as `no`. The default can be changed using the status.showUntrackedFiles configuration variable documented in linkgit:git-config[1]. diff --git a/howto/coordinate-embargoed-releases.html b/howto/coordinate-embargoed-releases.html index 23bbc15b8..88ffc5284 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 72e7d2b18..2e7dcd4a3 100644 --- a/howto/keep-canonical-history-correct.html +++ b/howto/keep-canonical-history-correct.html @@ -735,7 +735,7 @@ asciidoc.install();
@@ -939,7 +939,7 @@ tip of your master again and redo the two merges:

diff --git a/howto/maintain-git.html b/howto/maintain-git.html index a5336aaf8..5fefcaeb1 100644 --- a/howto/maintain-git.html +++ b/howto/maintain-git.html @@ -735,7 +735,7 @@ asciidoc.install();
@@ -1479,7 +1479,7 @@ $ git update-ref -d $mf/ai/topic diff --git a/howto/new-command.html b/howto/new-command.html index 297d8b016..aee5b1c95 100644 --- a/howto/new-command.html +++ b/howto/new-command.html @@ -735,7 +735,7 @@ asciidoc.install();
@@ -864,7 +864,7 @@ letter [PATCH 0/n]. diff --git a/howto/rebase-from-internal-branch.html b/howto/rebase-from-internal-branch.html index 9c228e14d..de8b32b4e 100644 --- a/howto/rebase-from-internal-branch.html +++ b/howto/rebase-from-internal-branch.html @@ -735,7 +735,7 @@ asciidoc.install();
@@ -896,7 +896,7 @@ the #1' commit.

diff --git a/howto/rebuild-from-update-hook.html b/howto/rebuild-from-update-hook.html index ae601be82..4ddbf1adb 100644 --- a/howto/rebuild-from-update-hook.html +++ b/howto/rebuild-from-update-hook.html @@ -735,7 +735,7 @@ asciidoc.install();
@@ -848,7 +848,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 0056f5b33..d80d64773 100644 --- a/howto/recover-corrupted-blob-object.html +++ b/howto/recover-corrupted-blob-object.html @@ -735,7 +735,7 @@ asciidoc.install();
@@ -881,7 +881,7 @@ thing.

diff --git a/howto/recover-corrupted-object-harder.html b/howto/recover-corrupted-object-harder.html index 2d4e2add8..fcf261acf 100644 --- a/howto/recover-corrupted-object-harder.html +++ b/howto/recover-corrupted-object-harder.html @@ -735,7 +735,7 @@ asciidoc.install();
@@ -1190,7 +1190,7 @@ int main(int argc, char **argv) diff --git a/howto/revert-a-faulty-merge.html b/howto/revert-a-faulty-merge.html index f8364843d..5be923201 100644 --- a/howto/revert-a-faulty-merge.html +++ b/howto/revert-a-faulty-merge.html @@ -735,7 +735,7 @@ asciidoc.install();
@@ -1026,7 +1026,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 ac8aa5d06..0d13271ac 100644 --- a/howto/revert-branch-rebase.html +++ b/howto/revert-branch-rebase.html @@ -735,7 +735,7 @@ asciidoc.install();
@@ -908,7 +908,7 @@ Committed merge 7fb9b7262a1d1e0a47bbfdcbbcf50ce0635d3f8f diff --git a/howto/separating-topic-branches.html b/howto/separating-topic-branches.html index 3dd17f359..54d5549de 100644 --- a/howto/separating-topic-branches.html +++ b/howto/separating-topic-branches.html @@ -735,7 +735,7 @@ asciidoc.install();
@@ -842,7 +842,7 @@ o---o"master" diff --git a/howto/setup-git-server-over-http.html b/howto/setup-git-server-over-http.html index 8e34ab7d0..90574658c 100644 --- a/howto/setup-git-server-over-http.html +++ b/howto/setup-git-server-over-http.html @@ -735,7 +735,7 @@ asciidoc.install();
@@ -1072,7 +1072,7 @@ help diagnosing the problem, but removes security checks.

diff --git a/howto/update-hook-example.html b/howto/update-hook-example.html index 956398014..7cf7bca89 100644 --- a/howto/update-hook-example.html +++ b/howto/update-hook-example.html @@ -735,7 +735,7 @@ asciidoc.install();
@@ -931,7 +931,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 cca4a90b5..c1f693278 100644 --- a/howto/use-git-daemon.html +++ b/howto/use-git-daemon.html @@ -735,7 +735,7 @@ asciidoc.install();
@@ -792,7 +792,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 63fba1fb8..413ffd327 100644 --- a/howto/using-merge-subtree.html +++ b/howto/using-merge-subtree.html @@ -735,7 +735,7 @@ asciidoc.install();
@@ -849,7 +849,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 261a672c1..0aa688db0 100644 --- a/howto/using-signed-tag-in-pull-request.html +++ b/howto/using-signed-tag-in-pull-request.html @@ -735,7 +735,7 @@ asciidoc.install();
@@ -953,7 +953,7 @@ as part of the merge commit.

diff --git a/technical/api-error-handling.html b/technical/api-error-handling.html index d26c1bda1..4d6ece189 100644 --- a/technical/api-error-handling.html +++ b/technical/api-error-handling.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/technical/api-index.html b/technical/api-index.html index a8fa830ea..4e4b5091d 100644 --- a/technical/api-index.html +++ b/technical/api-index.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/technical/api-merge.html b/technical/api-merge.html index b168cf366..574078857 100644 --- a/technical/api-merge.html +++ b/technical/api-merge.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/technical/api-parse-options.html b/technical/api-parse-options.html index 30d8e0f5f..b859d6ff0 100644 --- a/technical/api-parse-options.html +++ b/technical/api-parse-options.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/technical/api-simple-ipc.html b/technical/api-simple-ipc.html index b5fb56447..d9231616d 100644 --- a/technical/api-simple-ipc.html +++ b/technical/api-simple-ipc.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/technical/api-trace2.html b/technical/api-trace2.html index f5f8b2eed..403972942 100644 --- a/technical/api-trace2.html +++ b/technical/api-trace2.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/technical/bitmap-format.html b/technical/bitmap-format.html index c0d15d009..f1c232ef8 100644 --- a/technical/bitmap-format.html +++ b/technical/bitmap-format.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/technical/bundle-uri.html b/technical/bundle-uri.html index 90bdda40d..e2cabcea2 100644 --- a/technical/bundle-uri.html +++ b/technical/bundle-uri.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/technical/hash-function-transition.html b/technical/hash-function-transition.html index f28bc868d..bc80c0652 100644 --- a/technical/hash-function-transition.html +++ b/technical/hash-function-transition.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/technical/long-running-process-protocol.html b/technical/long-running-process-protocol.html index 1120b3050..27b7b4800 100644 --- a/technical/long-running-process-protocol.html +++ b/technical/long-running-process-protocol.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/technical/multi-pack-index.html b/technical/multi-pack-index.html index f5c9183e7..dbc2bab62 100644 --- a/technical/multi-pack-index.html +++ b/technical/multi-pack-index.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/technical/pack-heuristics.html b/technical/pack-heuristics.html index 377a63a71..813916f88 100644 --- a/technical/pack-heuristics.html +++ b/technical/pack-heuristics.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/technical/parallel-checkout.html b/technical/parallel-checkout.html index a03fc0e7e..04c7a0b8d 100644 --- a/technical/parallel-checkout.html +++ b/technical/parallel-checkout.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/technical/partial-clone.html b/technical/partial-clone.html index 25e6a3fa8..e0950d7de 100644 --- a/technical/partial-clone.html +++ b/technical/partial-clone.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/technical/racy-git.html b/technical/racy-git.html index a8913f59b..2aab0de92 100644 --- a/technical/racy-git.html +++ b/technical/racy-git.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/technical/scalar.html b/technical/scalar.html index d4ab66a91..27e339101 100644 --- a/technical/scalar.html +++ b/technical/scalar.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/technical/send-pack-pipeline.html b/technical/send-pack-pipeline.html index 13fb93852..0f3e52f82 100644 --- a/technical/send-pack-pipeline.html +++ b/technical/send-pack-pipeline.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/technical/shallow.html b/technical/shallow.html index 88cd5b403..4a146f7b0 100644 --- a/technical/shallow.html +++ b/technical/shallow.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/technical/trivial-merge.html b/technical/trivial-merge.html index e627da80a..d90a7a5e8 100644 --- a/technical/trivial-merge.html +++ b/technical/trivial-merge.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/technical/unit-tests.html b/technical/unit-tests.html index d6fd46521..82919d296 100644 --- a/technical/unit-tests.html +++ b/technical/unit-tests.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/user-manual.html b/user-manual.html index c609592a2..4e3389347 100644 --- a/user-manual.html +++ b/user-manual.html @@ -1,5 +1,5 @@ -Git User Manual

Git User Manual

Revision History
2024-03-25

Table of Contents

Introduction
1. Repositories and Branches
How to get a Git repository
How to check out a different version of a project
Understanding History: Commits
Understanding history: commits, parents, and reachability
Understanding history: History diagrams
Understanding history: What is a branch?
Manipulating branches
Examining an old version without creating a new branch
Examining branches from a remote repository
Naming branches, tags, and other references
Updating a repository with git fetch
Fetching branches from other repositories
2. Exploring Git history
How to use bisect to find a regression
Naming commits
Creating tags
Browsing revisions
Generating diffs
Viewing old file versions
Examples
Counting the number of commits on a branch
Check whether two branches point at the same history
Find first tagged version including a given fix
Showing commits unique to a given branch
Creating a changelog and tarball for a software release
Finding commits referencing a file with given content
3. Developing with Git
Telling Git your name
Creating a new repository
How to make a commit
Creating good commit messages
Ignoring files
How to merge
Resolving a merge
Getting conflict-resolution help during a merge
Undoing a merge
Fast-forward merges
Fixing mistakes
Fixing a mistake with a new commit
Fixing a mistake by rewriting history
Checking out an old version of a file
Temporarily setting aside work in progress
Ensuring good performance
Ensuring reliability
Checking the repository for corruption
Recovering lost changes
4. Sharing development with others
Getting updates with git pull
Submitting patches to a project
Importing patches to a project
Public Git repositories
Setting up a public repository
Exporting a Git repository via the Git protocol
Exporting a git repository via HTTP
Pushing changes to a public repository
What to do when a push fails
Setting up a shared repository
Allowing web browsing of a repository
How to get a Git repository with minimal history
Examples
Maintaining topic branches for a Linux subsystem maintainer
5. Rewriting history and maintaining patch series
Creating the perfect patch series
Keeping a patch series up to date using git rebase
Rewriting a single commit
Reordering or selecting from a patch series
Using interactive rebases
Other tools
Problems with rewriting history
Why bisecting merge commits can be harder than bisecting linear history
6. Advanced branch management
Fetching individual branches
git fetch and fast-forwards
Forcing git fetch to do non-fast-forward updates
Configuring remote-tracking branches
7. Git concepts
The Object Database
Commit Object
Tree Object
Blob Object
Trust
Tag Object
How Git stores objects efficiently: pack files
Dangling objects
Recovering from repository corruption
The index
8. Submodules
Pitfalls with submodules
9. Low-level Git operations
Object access and manipulation
The Workflow
working directory → index
index → object database
object database → index
index → working directory
Tying it all together
Examining the data
Merging multiple trees
Merging multiple trees, continued
10. Hacking Git
Object storage format
A birds-eye view of Git’s source code
11. Git Glossary
Git explained
A. Git Quick Reference
Creating a new repository
Managing branches
Exploring history
Making changes
Merging
Sharing your changes
Repository maintenance
B. Notes and todo list for this manual
Todo list

Introduction

Git is a fast distributed revision control system.

This manual is designed to be readable by someone with basic UNIX +Git User Manual

Git User Manual

Revision History
2024-03-28

Table of Contents

Introduction
1. Repositories and Branches
How to get a Git repository
How to check out a different version of a project
Understanding History: Commits
Understanding history: commits, parents, and reachability
Understanding history: History diagrams
Understanding history: What is a branch?
Manipulating branches
Examining an old version without creating a new branch
Examining branches from a remote repository
Naming branches, tags, and other references
Updating a repository with git fetch
Fetching branches from other repositories
2. Exploring Git history
How to use bisect to find a regression
Naming commits
Creating tags
Browsing revisions
Generating diffs
Viewing old file versions
Examples
Counting the number of commits on a branch
Check whether two branches point at the same history
Find first tagged version including a given fix
Showing commits unique to a given branch
Creating a changelog and tarball for a software release
Finding commits referencing a file with given content
3. Developing with Git
Telling Git your name
Creating a new repository
How to make a commit
Creating good commit messages
Ignoring files
How to merge
Resolving a merge
Getting conflict-resolution help during a merge
Undoing a merge
Fast-forward merges
Fixing mistakes
Fixing a mistake with a new commit
Fixing a mistake by rewriting history
Checking out an old version of a file
Temporarily setting aside work in progress
Ensuring good performance
Ensuring reliability
Checking the repository for corruption
Recovering lost changes
4. Sharing development with others
Getting updates with git pull
Submitting patches to a project
Importing patches to a project
Public Git repositories
Setting up a public repository
Exporting a Git repository via the Git protocol
Exporting a git repository via HTTP
Pushing changes to a public repository
What to do when a push fails
Setting up a shared repository
Allowing web browsing of a repository
How to get a Git repository with minimal history
Examples
Maintaining topic branches for a Linux subsystem maintainer
5. Rewriting history and maintaining patch series
Creating the perfect patch series
Keeping a patch series up to date using git rebase
Rewriting a single commit
Reordering or selecting from a patch series
Using interactive rebases
Other tools
Problems with rewriting history
Why bisecting merge commits can be harder than bisecting linear history
6. Advanced branch management
Fetching individual branches
git fetch and fast-forwards
Forcing git fetch to do non-fast-forward updates
Configuring remote-tracking branches
7. Git concepts
The Object Database
Commit Object
Tree Object
Blob Object
Trust
Tag Object
How Git stores objects efficiently: pack files
Dangling objects
Recovering from repository corruption
The index
8. Submodules
Pitfalls with submodules
9. Low-level Git operations
Object access and manipulation
The Workflow
working directory → index
index → object database
object database → index
index → working directory
Tying it all together
Examining the data
Merging multiple trees
Merging multiple trees, continued
10. Hacking Git
Object storage format
A birds-eye view of Git’s source code
11. Git Glossary
Git explained
A. Git Quick Reference
Creating a new repository
Managing branches
Exploring history
Making changes
Merging
Sharing your changes
Repository maintenance
B. Notes and todo list for this manual
Todo list

Introduction

Git is a fast distributed revision control system.

This manual is designed to be readable by someone with basic UNIX command-line skills, but no previous knowledge of Git.

Chapter 1, Repositories and Branches and Chapter 2, Exploring Git history explain how to fetch and study a project using git—read these chapters to learn how to build and test a particular version of a software project, search for -- cgit 1.2.3-korg