@@ -8,7 +8,7 @@ git-repo - Retrieve information about the repository
88SYNOPSIS
99--------
1010[synopsis]
11- git repo info [-- format=(lines|nul) | -z] [-- all | <key >... ]
11+ git repo info [-- format=(lines|nul) | -z] [-- path-format=(absolute|relative)] [ -- all | <key >... ]
1212git repo info -- keys [-- format=(lines|nul) | -z]
1313git repo structure [-- format=(table|lines|nul) | -z]
1414
@@ -56,6 +56,11 @@ supported:
5656`nul` :::
5757 Similar to `lines` , but using a _NUL_ character after each value.
5858
59+ `--path-format=(absolute|relative)` :::
60+ Controls formatting for keys in the `path` category. The default is
61+ `absolute` . This option may be specified multiple times; the last one
62+ specified takes effect.
63+
5964`structure [--format=(table|lines|nul) | -z]` ::
6065 Retrieve statistics about the current repository structure. The
6166 following kinds of information are reported:
@@ -64,6 +69,12 @@ supported:
6469* Reachable object counts categorized by type
6570* Total inflated size of reachable objects by type
6671* Total disk size of reachable objects by type
72+ * Largest inflated reachable object size by type
73+ * Largest disk size of a reachable object by type
74+ * Largest parent count among reachable commits
75+ * Largest entry count among reachable trees
76+ * Longest and deepest path among reachable blobs
77+ * Deepest annotated tag chain
6778+
6879The output format can be chosen through the flag `--format` . Three formats are
6980supported:
@@ -76,6 +87,7 @@ supported:
7687`lines` :::
7788 Each line of output contains a key-value pair for a repository stat.
7889 The '=' character is used to delimit between the key and the value.
90+ Both aggregate metrics and per-type metrics are included.
7991 Values containing "unusual" characters are quoted as explained for the
8092 configuration variable `core.quotePath` (see linkgit:git-config[1]).
8193
@@ -90,9 +102,11 @@ supported:
90102
91103INFO KEYS
92104---------
93- In order to obtain a set of values from `git repo info` , you should provide
94- the keys that identify them. Here's a list of the available keys and the
95- values that they return:
105+ In order to obtain values from `git repo info` , provide either individual keys
106+ or category names. A category returns all keys within that category. For
107+ example, `layout` returns both `layout.bare` and `layout.shallow` .
108+
109+ Here's a list of the available keys and the values that they return:
96110
97111`layout.bare` ::
98112 `true` if this is a bare repository, otherwise `false` .
@@ -103,6 +117,42 @@ values that they return:
103117`object.format` ::
104118 The object format (hash algorithm) used in the repository.
105119
120+ `path.common-dir` ::
121+ The path to the common git directory.
122+
123+ `path.config-file` ::
124+ The path to the `config` file in the git directory.
125+
126+ `path.git-dir` ::
127+ The path to the git directory.
128+
129+ `path.prefix` ::
130+ The path of the current working directory relative to the top-level
131+ directory.
132+
133+ `path.grafts-file` ::
134+ The path to the `info/grafts` file.
135+
136+ `path.hooks-directory` ::
137+ The path to the `hooks` directory.
138+
139+ `path.index-file` ::
140+ The path to the index file.
141+
142+ `path.objects-directory` ::
143+ The path to the objects directory.
144+
145+ `path.superproject-working-tree` ::
146+ The path to the superproject's working tree root, or an empty string
147+ when the repository is not used as a submodule.
148+
149+ `path.toplevel` ::
150+ The path to the top-level working tree directory, or an empty string
151+ for bare repositories.
152+
153+ `path.working-tree` ::
154+ Alias for `path.toplevel` .
155+
106156`references.format` ::
107157 The reference storage format. The valid values are:
108158+
0 commit comments