From a2c58053d4692d5ecac8b0bf98bb211c2324912c Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Fri, 26 Jan 2024 14:42:07 -0800 Subject: Autogenerated HTML docs for v2.43.0-440-gb50a60 --- MyFirstContribution.html | 2 +- MyFirstObjectWalk.html | 2 +- RelNotes/2.44.0.txt | 33 ++++ ReviewingGuidelines.html | 2 +- SubmittingPatches.html | 2 +- ToolsForGit.html | 2 +- everyday.html | 2 +- git-config.html | 263 ++++++++++++++------------- git-remote-helpers.html | 2 +- git-rev-list.html | 8 +- 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 +- rev-list-options.txt | 8 +- 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 +- 48 files changed, 236 insertions(+), 194 deletions(-) diff --git a/MyFirstContribution.html b/MyFirstContribution.html index 675a731cd..f8273eb19 100644 --- a/MyFirstContribution.html +++ b/MyFirstContribution.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/MyFirstObjectWalk.html b/MyFirstObjectWalk.html index 6d40fff09..9ddc4e638 100644 --- a/MyFirstObjectWalk.html +++ b/MyFirstObjectWalk.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/RelNotes/2.44.0.txt b/RelNotes/2.44.0.txt index 4dda977fc..9db3ea824 100644 --- a/RelNotes/2.44.0.txt +++ b/RelNotes/2.44.0.txt @@ -46,6 +46,19 @@ UI, Workflows & Features and domain in the error message when we barf on mismatch between the Git directory and the current user on Windows. + * The error message given when "git branch -d branch" fails due to + commits unique to the branch has been split into an error and a new + conditional advice message. + + * When given an existing but unreadable file as a configuration file, + gitweb behaved as if the file did not exist at all, but now it + errors out. This is a change that may break backward compatibility. + + * When $HOME/.gitignore is missing but XDG config file available, we + should write into the latter, not former. "git gc" and "git + maintenance" wrote into a wrong "global config" file, which have + been corrected. + Performance, Internal Implementation, Development Support etc. @@ -80,6 +93,23 @@ Performance, Internal Implementation, Development Support etc. single, primary, pack in a repository with multiple packfiles. It has been extended to allow reuse from other packfiles, too. + * Comment updates to help developers not to attempt to modify + messages from plumbing commands that must stay constant. + + It might make sense to reassess the plumbing needs every few years, + but that should be done as a separate effort. + + * Move test-ctype helper to the unit-test framework. + + * Instead of manually creating refs/ hierarchy on disk upon a + creation of a secondary worktree, which is only usable via the + files backend, use the refs API to populate it. + + * CI for GitLab learned to drive macOS jobs. + + * A few tests to "git commit -o " and "git commit -i + " has been added. + Fixes since v2.43 ----------------- @@ -214,3 +244,6 @@ Fixes since v2.43 (merge 25aec06326 ib/rebase-reschedule-doc later to maint). (merge 5aea3955bc rj/clarify-branch-doc-m later to maint). (merge 9cce3be2df bk/bisect-doc-fix later to maint). + (merge 8f50984cf4 ne/doc-filter-blob-limit-fix later to maint). + (merge f10b0989b8 la/strvec-comment-fix later to maint). + (merge 8430b438f6 vd/fsck-submodule-url-test later to maint). diff --git a/ReviewingGuidelines.html b/ReviewingGuidelines.html index f400ecf38..fb1639c40 100644 --- a/ReviewingGuidelines.html +++ b/ReviewingGuidelines.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/SubmittingPatches.html b/SubmittingPatches.html index 94ae2d6e0..aed56494f 100644 --- a/SubmittingPatches.html +++ b/SubmittingPatches.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/ToolsForGit.html b/ToolsForGit.html index c9c06d95d..d8cff5827 100644 --- a/ToolsForGit.html +++ b/ToolsForGit.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/everyday.html b/everyday.html index 8908aa291..3522b4529 100644 --- a/everyday.html +++ b/everyday.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/git-config.html b/git-config.html index 5e9b7552d..544f05402 100644 --- a/git-config.html +++ b/git-config.html @@ -1991,243 +1991,243 @@ advice.*
-ambiguousFetchRefspec +addEmbeddedRepo

- Advice shown when a fetch refspec for multiple remotes maps to - the same remote-tracking branch namespace and causes branch - tracking set-up to fail. + Advice on what to do when you’ve accidentally added one + git repo inside of another.

-fetchShowForcedUpdates +addEmptyPathspec

- Advice shown when git-fetch(1) takes a long time - to calculate forced updates after ref updates, or to warn - that the check is disabled. + Advice shown if a user runs the add command without providing + the pathspec parameter.

-pushUpdateRejected +addIgnoredFile

- Set this variable to false if you want to disable - pushNonFFCurrent, pushNonFFMatching, pushAlreadyExists, - pushFetchFirst, pushNeedsForce, and pushRefNeedsUpdate - simultaneously. + Advice shown if a user attempts to add an ignored file to + the index.

-pushNonFFCurrent +amWorkDir

- Advice shown when git-push(1) fails due to a - non-fast-forward update to the current branch. + Advice that shows the location of the patch file when + git-am(1) fails to apply it.

-pushNonFFMatching +ambiguousFetchRefspec

- Advice shown when you ran git-push(1) and pushed - matching refs explicitly (i.e. you used :, or - specified a refspec that isn’t your current branch) and - it resulted in a non-fast-forward error. + Advice shown when a fetch refspec for multiple remotes maps to + the same remote-tracking branch namespace and causes branch + tracking set-up to fail.

-pushAlreadyExists +checkoutAmbiguousRemoteBranchName

- Shown when git-push(1) rejects an update that - does not qualify for fast-forwarding (e.g., a tag.) + Advice shown when the argument to + git-checkout(1) and git-switch(1) + ambiguously resolves to a + remote tracking branch on more than one remote in + situations where an unambiguous argument would have + otherwise caused a remote-tracking branch to be + checked out. See the checkout.defaultRemote + configuration variable for how to set a given remote + to be used by default in some situations where this + advice would be printed.

-pushFetchFirst +commitBeforeMerge

- Shown when git-push(1) rejects an update that - tries to overwrite a remote ref that points at an - object we do not have. + Advice shown when git-merge(1) refuses to + merge to avoid overwriting local changes.

-pushNeedsForce +detachedHead

- Shown when git-push(1) rejects an update that - tries to overwrite a remote ref that points at an - object that is not a commit-ish, or make the remote - ref point at an object that is not a commit-ish. + Advice shown when you used + git-switch(1) or git-checkout(1) + to move to the detached HEAD state, to instruct how to + create a local branch after the fact.

-pushUnqualifiedRefname +diverging

- Shown when git-push(1) gives up trying to - guess based on the source and destination refs what - remote ref namespace the source belongs in, but where - we can still suggest that the user push to either - refs/heads/* or refs/tags/* based on the type of the - source object. + Advice shown when a fast-forward is not possible.

-pushRefNeedsUpdate +fetchShowForcedUpdates

- Shown when git-push(1) rejects a forced update of - a branch when its remote-tracking ref has updates that we - do not have locally. + Advice shown when git-fetch(1) takes a long time + to calculate forced updates after ref updates, or to warn + that the check is disabled.

-skippedCherryPicks +forceDeleteBranch

- Shown when git-rebase(1) skips a commit that has already - been cherry-picked onto the upstream branch. + Advice shown when a user tries to delete a not fully merged + branch without the force option set.

-statusAheadBehind +ignoredHook

- Shown when git-status(1) computes the ahead/behind - counts for a local ref compared to its remote tracking ref, - and that calculation takes longer than expected. Will not - appear if status.aheadBehind is false or the option - --no-ahead-behind is given. + Advice shown if a hook is ignored because the hook is not + set as executable.

-statusHints +implicitIdentity

- Show directions on how to proceed from the current - state in the output of git-status(1), in - the template shown when writing commit messages in - git-commit(1), and in the help message shown - by git-switch(1) or - git-checkout(1) when switching branches. + Advice on how to set your identity configuration when + your information is guessed from the system username and + domain name.

-statusUoption +nestedTag

- Advise to consider using the -u option to git-status(1) - when the command takes more than 2 seconds to enumerate untracked - files. + Advice shown if a user attempts to recursively tag a tag object.

-commitBeforeMerge +pushAlreadyExists

- Advice shown when git-merge(1) refuses to - merge to avoid overwriting local changes. + Shown when git-push(1) rejects an update that + does not qualify for fast-forwarding (e.g., a tag.)

-resetNoRefresh +pushFetchFirst

- Advice to consider using the --no-refresh option to - git-reset(1) when the command takes more than 2 seconds - to refresh the index after reset. + Shown when git-push(1) rejects an update that + tries to overwrite a remote ref that points at an + object we do not have.

-resolveConflict +pushNeedsForce

- Advice shown by various commands when conflicts - prevent the operation from being performed. + Shown when git-push(1) rejects an update that + tries to overwrite a remote ref that points at an + object that is not a commit-ish, or make the remote + ref point at an object that is not a commit-ish.

-sequencerInUse +pushNonFFCurrent

- Advice shown when a sequencer command is already in progress. + Advice shown when git-push(1) fails due to a + non-fast-forward update to the current branch.

-implicitIdentity +pushNonFFMatching

- Advice on how to set your identity configuration when - your information is guessed from the system username and - domain name. + Advice shown when you ran git-push(1) and pushed + matching refs explicitly (i.e. you used :, or + specified a refspec that isn’t your current branch) and + it resulted in a non-fast-forward error.

-detachedHead +pushRefNeedsUpdate

- Advice shown when you used - git-switch(1) or git-checkout(1) - to move to the detached HEAD state, to instruct how to - create a local branch after the fact. + Shown when git-push(1) rejects a forced update of + a branch when its remote-tracking ref has updates that we + do not have locally.

-suggestDetachingHead +pushUnqualifiedRefname

- Advice shown when git-switch(1) refuses to detach HEAD - without the explicit --detach option. + Shown when git-push(1) gives up trying to + guess based on the source and destination refs what + remote ref namespace the source belongs in, but where + we can still suggest that the user push to either + refs/heads/* or refs/tags/* based on the type of the + source object.

-checkoutAmbiguousRemoteBranchName +pushUpdateRejected

- Advice shown when the argument to - git-checkout(1) and git-switch(1) - ambiguously resolves to a - remote tracking branch on more than one remote in - situations where an unambiguous argument would have - otherwise caused a remote-tracking branch to be - checked out. See the checkout.defaultRemote - configuration variable for how to set a given remote - to be used by default in some situations where this - advice would be printed. + Set this variable to false if you want to disable + pushNonFFCurrent, pushNonFFMatching, pushAlreadyExists, + pushFetchFirst, pushNeedsForce, and pushRefNeedsUpdate + simultaneously.

-amWorkDir +resetNoRefresh

- Advice that shows the location of the patch file when - git-am(1) fails to apply it. + Advice to consider using the --no-refresh option to + git-reset(1) when the command takes more than 2 seconds + to refresh the index after reset. +

+
+
+resolveConflict +
+
+

+ Advice shown by various commands when conflicts + prevent the operation from being performed.

@@ -2240,74 +2240,82 @@ rmHints

-addEmbeddedRepo +sequencerInUse

- Advice on what to do when you’ve accidentally added one - git repo inside of another. + Advice shown when a sequencer command is already in progress.

-ignoredHook +skippedCherryPicks

- Advice shown if a hook is ignored because the hook is not - set as executable. + Shown when git-rebase(1) skips a commit that has already + been cherry-picked onto the upstream branch.

-waitingForEditor +statusAheadBehind

- Print a message to the terminal whenever Git is waiting for - editor input from the user. + Shown when git-status(1) computes the ahead/behind + counts for a local ref compared to its remote tracking ref, + and that calculation takes longer than expected. Will not + appear if status.aheadBehind is false or the option + --no-ahead-behind is given.

-nestedTag +statusHints

- Advice shown if a user attempts to recursively tag a tag object. + Show directions on how to proceed from the current + state in the output of git-status(1), in + the template shown when writing commit messages in + git-commit(1), and in the help message shown + by git-switch(1) or + git-checkout(1) when switching branches.

-submoduleAlternateErrorStrategyDie +statusUoption

- Advice shown when a submodule.alternateErrorStrategy option - configured to "die" causes a fatal error. + Advise to consider using the -u option to git-status(1) + when the command takes more than 2 seconds to enumerate untracked + files.

-submodulesNotUpdated +submoduleAlternateErrorStrategyDie

- Advice shown when a user runs a submodule command that fails - because git submodule update --init was not run. + Advice shown when a submodule.alternateErrorStrategy option + configured to "die" causes a fatal error.

-addIgnoredFile +submodulesNotUpdated

- Advice shown if a user attempts to add an ignored file to - the index. + Advice shown when a user runs a submodule command that fails + because git submodule update --init was not run.

-addEmptyPathspec +suggestDetachingHead

- Advice shown if a user runs the add command without providing - the pathspec parameter. + Advice shown when git-switch(1) refuses to detach HEAD + without the explicit --detach option.

@@ -2321,11 +2329,12 @@ updateSparsePath

-diverging +waitingForEditor

- Advice shown when a fast-forward is not possible. + Print a message to the terminal whenever Git is waiting for + editor input from the user.

diff --git a/git-remote-helpers.html b/git-remote-helpers.html index f9dc48f96..ced7978ff 100644 --- a/git-remote-helpers.html +++ b/git-remote-helpers.html @@ -735,7 +735,7 @@ asciidoc.install();
diff --git a/git-rev-list.html b/git-rev-list.html index 6d5a95367..d17afc3b3 100644 --- a/git-rev-list.html +++ b/git-rev-list.html @@ -2157,10 +2157,10 @@ together.

may be one of the following:

The form --filter=blob:none omits all blobs.

-

The form --filter=blob:limit=<n>[kmg] omits blobs larger than n bytes -or units. n may be zero. The suffixes k, m, and g can be used to name -units in KiB, MiB, or GiB. For example, blob:limit=1k is the same -as blob:limit=1024.

+

The form --filter=blob:limit=<n>[kmg] omits blobs of size at least n +bytes or units. n may be zero. The suffixes k, m, and g can be used +to name units in KiB, MiB, or GiB. For example, blob:limit=1k +is the same as blob:limit=1024.

The form --filter=object:type=(tag|commit|tree|blob) omits all objects which are not of the requested type.

The form --filter=sparse:oid=<blob-ish> uses a sparse-checkout diff --git a/howto/coordinate-embargoed-releases.html b/howto/coordinate-embargoed-releases.html index 5f92c699f..8abc4517f 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 71df22fa6..33f2cef61 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 14f4fc2f4..aa3fdc8b6 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 ecb174951..8394cc17c 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 443913807..88efaef66 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 bd4eae3ee..b224648c0 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 41794d838..1e2e7c57d 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 de89a5c4d..45f7cc383 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 59b5d74d0..ba3ab9e1b 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 bb65646d9..9fce20785 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 a26218bc3..67fea336b 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 dbf542a2d..37765158b 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 3421e8a41..0fe5c49ff 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 f54021c78..64cc73b15 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 9f7451c0a..bcbde2dcf 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 34f498df2..572dd0730 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/rev-list-options.txt b/rev-list-options.txt index 2bf239ff0..a583b52c6 100644 --- a/rev-list-options.txt +++ b/rev-list-options.txt @@ -947,10 +947,10 @@ ifdef::git-rev-list[] + The form '--filter=blob:none' omits all blobs. + -The form '--filter=blob:limit=[kmg]' omits blobs larger than n bytes -or units. n may be zero. The suffixes k, m, and g can be used to name -units in KiB, MiB, or GiB. For example, 'blob:limit=1k' is the same -as 'blob:limit=1024'. +The form '--filter=blob:limit=[kmg]' omits blobs of size at least n +bytes or units. n may be zero. The suffixes k, m, and g can be used +to name units in KiB, MiB, or GiB. For example, 'blob:limit=1k' +is the same as 'blob:limit=1024'. + The form '--filter=object:type=(tag|commit|tree|blob)' omits all objects which are not of the requested type. diff --git a/technical/api-error-handling.html b/technical/api-error-handling.html index 0ff3ca237..702e0809e 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 27a8a4059..b45bae344 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 5324b9ba5..b5d3e7f09 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 70e74c4b9..d468d21a9 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 739ee618b..0e22679a6 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 0a3f947cd..da8226665 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 d12966ed5..8dd213645 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 723833f3f..e787cf54f 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 1c2a2f44a..6cef2b43c 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 ced0a8f59..7691476da 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 593514031..f281ae228 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 003ed43a1..a03860a26 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 16757f151..28f3e2678 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 594601130..6a0492b1e 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 4258f9c6f..47c594b29 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 c623863c0..677dbf7bf 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 eac869522..2d7fc7c07 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 b06334750..b25455658 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 af857cc4d..457944511 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 4fd82b00d..9cf7f5684 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 ed94b44ef..ac9b94af6 100644 --- a/user-manual.html +++ b/user-manual.html @@ -1,5 +1,5 @@ -Git User Manual

Git User Manual

Revision History
2024-01-19

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-01-26

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