Skip to content

Commit 4b6302c

Browse files
committed
Merge branch 'po/glossary-around-traversal'
The glossary entries for "commit-graph file" and "reachability bitmap" have been added. * po/glossary-around-traversal: glossary: add reachability bitmap description glossary: add "commit graph" description doc: use 'object database' not ODB or abbreviation doc: use "commit-graph" hyphenation consistently
2 parents 06e7696 + 8fea12a commit 4b6302c

File tree

6 files changed

+35
-12
lines changed

6 files changed

+35
-12
lines changed

Documentation/config/core.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -618,7 +618,7 @@ but risks losing recent work in the event of an unclean system shutdown.
618618
* `loose-object` hardens objects added to the repo in loose-object form.
619619
* `pack` hardens objects added to the repo in packfile form.
620620
* `pack-metadata` hardens packfile bitmaps and indexes.
621-
* `commit-graph` hardens the commit graph file.
621+
* `commit-graph` hardens the commit-graph file.
622622
* `index` hardens the index when it is modified.
623623
* `objects` is an aggregate option that is equivalent to
624624
`loose-object,pack`.

Documentation/git-pack-redundant.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ OPTIONS
3434

3535
--alt-odb::
3636
Don't require objects present in packs from alternate object
37-
directories to be present in local packs.
37+
database (odb) directories to be present in local packs.
3838

3939
--verbose::
4040
Outputs some statistics to stderr. Has a small performance penalty.

Documentation/gitformat-commit-graph.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ gitformat-commit-graph(5)
33

44
NAME
55
----
6-
gitformat-commit-graph - Git commit graph format
6+
gitformat-commit-graph - Git commit-graph format
77

88
SYNOPSIS
99
--------
@@ -14,7 +14,7 @@ $GIT_DIR/objects/info/commit-graphs/*
1414
DESCRIPTION
1515
-----------
1616

17-
The Git commit graph stores a list of commit OIDs and some associated
17+
The Git commit-graph stores a list of commit OIDs and some associated
1818
metadata, including:
1919

2020
- The generation number of the commit.
@@ -34,7 +34,7 @@ corresponding to the array position within the list of commit OIDs. Due
3434
to some special constants we use to track parents, we can store at most
3535
(1 << 30) + (1 << 29) + (1 << 28) - 1 (around 1.8 billion) commits.
3636

37-
== Commit graph files have the following format:
37+
== Commit-graph files have the following format:
3838

3939
In order to allow extensions that add extra data to the graph, we organize
4040
the body into "chunks" and provide a binary lookup table at the beginning

Documentation/glossary-content.txt

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
[[def_branch]]branch::
2121
A "branch" is a line of development. The most recent
2222
<<def_commit,commit>> on a branch is referred to as the tip of
23-
that branch. The tip of the branch is referenced by a branch
23+
that branch. The tip of the branch is <<def_ref,referenced>> by a branch
2424
<<def_head,head>>, which moves forward as additional development
2525
is done on the branch. A single Git
2626
<<def_repository,repository>> can track an arbitrary number of
@@ -75,6 +75,21 @@ state in the Git history, by creating a new commit representing the current
7575
state of the <<def_index,index>> and advancing <<def_HEAD,HEAD>>
7676
to point at the new commit.
7777

78+
[[def_commit_graph_general]]commit graph concept, representations and usage::
79+
A synonym for the <<def_DAG,DAG>> structure formed by the commits
80+
in the object database, <<def_ref,referenced>> by branch tips,
81+
using their <<def_chain,chain>> of linked commits.
82+
This structure is the definitive commit graph. The
83+
graph can be represented in other ways, e.g. the
84+
<<def_commit_graph_file,"commit-graph" file>>.
85+
86+
[[def_commit_graph_file]]commit-graph file::
87+
The "commit-graph" (normally hyphenated) file is a supplemental
88+
representation of the <<def_commit_graph_general,commit graph>>
89+
which accelerates commit graph walks. The "commit-graph" file is
90+
stored either in the .git/objects/info directory or in the info
91+
directory of an alternate object database.
92+
7893
[[def_commit_object]]commit object::
7994
An <<def_object,object>> which contains the information about a
8095
particular <<def_revision,revision>>, such as <<def_parent,parents>>, committer,
@@ -262,7 +277,7 @@ This commit is referred to as a "merge commit", or sometimes just a
262277
identified by its <<def_object_name,object name>>. The objects usually
263278
live in `$GIT_DIR/objects/`.
264279

265-
[[def_object_identifier]]object identifier::
280+
[[def_object_identifier]]object identifier (oid)::
266281
Synonym for <<def_object_name,object name>>.
267282

268283
[[def_object_name]]object name::
@@ -493,6 +508,14 @@ exclude;;
493508
<<def_tree_object,trees>> to the trees or <<def_blob_object,blobs>>
494509
that they contain.
495510

511+
[[def_reachability_bitmap]]reachability bitmaps::
512+
Reachability bitmaps store information about the
513+
<<def_reachable,reachability>> of a selected set of commits in
514+
a packfile, or a multi-pack index (MIDX), to speed up object search.
515+
The bitmaps are stored in a ".bitmap" file. A repository may have at
516+
most one bitmap file in use. The bitmap file may belong to either one
517+
pack, or the repository's multi-pack index (if it exists).
518+
496519
[[def_rebase]]rebase::
497520
To reapply a series of changes from a <<def_branch,branch>> to a
498521
different base, and reset the <<def_head,head>> of that branch

Documentation/technical/commit-graph.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Git Commit Graph Design Notes
1+
Git Commit-Graph Design Notes
22
=============================
33

44
Git walks the commit graph for many reasons, including:
@@ -17,7 +17,7 @@ There are two main costs here:
1717

1818
The commit-graph file is a supplemental data structure that accelerates
1919
commit graph walks. If a user downgrades or disables the 'core.commitGraph'
20-
config setting, then the existing ODB is sufficient. The file is stored
20+
config setting, then the existing object database is sufficient. The file is stored
2121
as "commit-graph" either in the .git/objects/info directory or in the info
2222
directory of an alternate.
2323

@@ -95,7 +95,7 @@ with default order), but is not used when the topological order is
9595
required (such as merge base calculations, "git log --graph").
9696

9797
In practice, we expect some commits to be created recently and not stored
98-
in the commit graph. We can treat these commits as having "infinite"
98+
in the commit-graph. We can treat these commits as having "infinite"
9999
generation number and walk until reaching commits with known generation
100100
number.
101101

@@ -149,7 +149,7 @@ Design Details
149149
helpful for these clones, anyway. The commit-graph will not be read or
150150
written when shallow commits are present.
151151

152-
Commit Graphs Chains
152+
Commit-Graphs Chains
153153
--------------------
154154

155155
Typically, repos grow with near-constant velocity (commits per day). Over time,

Documentation/technical/parallel-checkout.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ Rejected Multi-Threaded Solution
5656

5757
The most "straightforward" implementation would be to spread the set of
5858
to-be-updated cache entries across multiple threads. But due to the
59-
thread-unsafe functions in the ODB code, we would have to use locks to
59+
thread-unsafe functions in the object database code, we would have to use locks to
6060
coordinate the parallel operation. An early prototype of this solution
6161
showed that the multi-threaded checkout would bring performance
6262
improvements over the sequential code, but there was still too much lock

0 commit comments

Comments
 (0)