Merge branch 'sg/t4051-fix'
[git.git] / Documentation / git-commit-graph.txt
blobdececb79d772447e5ca0d3ea8253f20ea288ddf6
1 git-commit-graph(1)
2 ===================
4 NAME
5 ----
6 git-commit-graph - Write and verify Git commit graph files
9 SYNOPSIS
10 --------
11 [verse]
12 'git commit-graph read' [--object-dir <dir>]
13 'git commit-graph verify' [--object-dir <dir>]
14 'git commit-graph write' <options> [--object-dir <dir>]
17 DESCRIPTION
18 -----------
20 Manage the serialized commit graph file.
23 OPTIONS
24 -------
25 --object-dir::
26         Use given directory for the location of packfiles and commit graph
27         file. This parameter exists to specify the location of an alternate
28         that only has the objects directory, not a full .git directory. The
29         commit graph file is expected to be at <dir>/info/commit-graph and
30         the packfiles are expected to be in <dir>/pack.
33 COMMANDS
34 --------
35 'write'::
37 Write a commit graph file based on the commits found in packfiles.
39 With the `--stdin-packs` option, generate the new commit graph by
40 walking objects only in the specified pack-indexes. (Cannot be combined
41 with `--stdin-commits` or `--reachable`.)
43 With the `--stdin-commits` option, generate the new commit graph by
44 walking commits starting at the commits specified in stdin as a list
45 of OIDs in hex, one OID per line. (Cannot be combined with
46 `--stdin-packs` or `--reachable`.)
48 With the `--reachable` option, generate the new commit graph by walking
49 commits starting at all refs. (Cannot be combined with `--stdin-commits`
50 or `--stdin-packs`.)
52 With the `--append` option, include all commits that are present in the
53 existing commit-graph file.
55 'read'::
57 Read a graph file given by the commit-graph file and output basic
58 details about the graph file. Used for debugging purposes.
60 'verify'::
62 Read the commit-graph file and verify its contents against the object
63 database. Used to check for corrupted data.
66 EXAMPLES
67 --------
69 * Write a commit graph file for the packed commits in your local .git folder.
71 ------------------------------------------------
72 $ git commit-graph write
73 ------------------------------------------------
75 * Write a graph file, extending the current graph file using commits
76 * in <pack-index>.
78 ------------------------------------------------
79 $ echo <pack-index> | git commit-graph write --stdin-packs
80 ------------------------------------------------
82 * Write a graph file containing all reachable commits.
84 ------------------------------------------------
85 $ git show-ref -s | git commit-graph write --stdin-commits
86 ------------------------------------------------
88 * Write a graph file containing all commits in the current
89 * commit-graph file along with those reachable from HEAD.
91 ------------------------------------------------
92 $ git rev-parse HEAD | git commit-graph write --stdin-commits --append
93 ------------------------------------------------
95 * Read basic information from the commit-graph file.
97 ------------------------------------------------
98 $ git commit-graph read
99 ------------------------------------------------
104 Part of the linkgit:git[1] suite