Blame


1 a954aa0a 2021-06-22 stsp <!DOCTYPE html>
2 a954aa0a 2021-06-22 stsp <html>
3 63657f42 2022-09-07 stsp <head>
4 63657f42 2022-09-07 stsp <meta charset="utf-8"/>
5 63657f42 2022-09-07 stsp <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
6 63657f42 2022-09-07 stsp <link rel="stylesheet" href="mandoc.css" type="text/css" media="all"/>
7 63657f42 2022-09-07 stsp <title>GOTADMIN(1)</title>
8 63657f42 2022-09-07 stsp </head>
9 a954aa0a 2021-06-22 stsp <!-- This is an automatically generated file. Do not edit.
10 a954aa0a 2021-06-22 stsp Copyright (c) 2021 Stefan Sperling
11 a954aa0a 2021-06-22 stsp
12 a954aa0a 2021-06-22 stsp Permission to use, copy, modify, and distribute this software for any
13 a954aa0a 2021-06-22 stsp purpose with or without fee is hereby granted, provided that the above
14 a954aa0a 2021-06-22 stsp copyright notice and this permission notice appear in all copies.
15 a954aa0a 2021-06-22 stsp
16 a954aa0a 2021-06-22 stsp THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
17 a954aa0a 2021-06-22 stsp WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
18 a954aa0a 2021-06-22 stsp MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
19 a954aa0a 2021-06-22 stsp ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
20 a954aa0a 2021-06-22 stsp WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
21 a954aa0a 2021-06-22 stsp ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
22 a954aa0a 2021-06-22 stsp OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
23 a954aa0a 2021-06-22 stsp -->
24 a954aa0a 2021-06-22 stsp <body>
25 63657f42 2022-09-07 stsp <div class="head" role="doc-pageheader" aria-label="Manual header
26 63657f42 2022-09-07 stsp line"><span class="head-ltitle">GOTADMIN(1)</span>
27 63657f42 2022-09-07 stsp <span class="head-vol">General Commands Manual</span>
28 63657f42 2022-09-07 stsp <span class="head-rtitle">GOTADMIN(1)</span></div>
29 63657f42 2022-09-07 stsp <main class="manual-text">
30 a954aa0a 2021-06-22 stsp <section class="Sh">
31 63657f42 2022-09-07 stsp <h2 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h2>
32 63657f42 2022-09-07 stsp <p class="Pp"><code class="Nm">gotadmin</code> &#x2014;
33 63657f42 2022-09-07 stsp <span class="Nd" role="doc-subtitle">Game of Trees repository
34 63657f42 2022-09-07 stsp administration</span></p>
35 a954aa0a 2021-06-22 stsp </section>
36 a954aa0a 2021-06-22 stsp <section class="Sh">
37 63657f42 2022-09-07 stsp <h2 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h2>
38 a954aa0a 2021-06-22 stsp <table class="Nm">
39 a954aa0a 2021-06-22 stsp <tr>
40 a954aa0a 2021-06-22 stsp <td><code class="Nm">gotadmin</code></td>
41 742bb3a1 2022-10-24 stsp <td>[<code class="Fl">-hV</code>] <var class="Ar">command</var>
42 a954aa0a 2021-06-22 stsp [<var class="Ar">arg ...</var>]</td>
43 a954aa0a 2021-06-22 stsp </tr>
44 a954aa0a 2021-06-22 stsp </table>
45 a954aa0a 2021-06-22 stsp </section>
46 a954aa0a 2021-06-22 stsp <section class="Sh">
47 63657f42 2022-09-07 stsp <h2 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h2>
48 a954aa0a 2021-06-22 stsp <p class="Pp"><code class="Nm">gotadmin</code> is the repository maintenance
49 376d4d52 2022-07-04 stsp tool for the <a class="Xr" aria-label="got, section 1">got(1)</a> version
50 376d4d52 2022-07-04 stsp control system.</p>
51 376d4d52 2022-07-04 stsp <p class="Pp"><a class="Xr" aria-label="got, section 1">got(1)</a> stores the
52 376d4d52 2022-07-04 stsp history of tracked files in a Git repository, as used by the Git version
53 376d4d52 2022-07-04 stsp control system. <code class="Nm">gotadmin</code> provides commands for
54 376d4d52 2022-07-04 stsp inspecting and manipulating the on-disk state of Git repositories. The
55 376d4d52 2022-07-04 stsp repository format is described in <a class="Xr" aria-label="git-repository,
56 376d4d52 2022-07-04 stsp section 5">git-repository(5)</a>.</p>
57 a954aa0a 2021-06-22 stsp <p class="Pp"><code class="Nm">gotadmin</code> provides global and
58 a954aa0a 2021-06-22 stsp command-specific options. Global options must precede the command name, and
59 a954aa0a 2021-06-22 stsp are as follows:</p>
60 a954aa0a 2021-06-22 stsp <dl class="Bl-tag">
61 a954aa0a 2021-06-22 stsp <dt id="h"><a class="permalink" href="#h"><code class="Fl">-h</code></a></dt>
62 a954aa0a 2021-06-22 stsp <dd>Display usage information and exit immediately.</dd>
63 a954aa0a 2021-06-22 stsp <dt id="V"><a class="permalink" href="#V"><code class="Fl">-V</code></a>,
64 a954aa0a 2021-06-22 stsp <code class="Fl">--version</code></dt>
65 a954aa0a 2021-06-22 stsp <dd>Display program version and exit immediately.</dd>
66 a954aa0a 2021-06-22 stsp </dl>
67 a954aa0a 2021-06-22 stsp <p class="Pp">The commands for <code class="Nm">gotadmin</code> are as
68 a954aa0a 2021-06-22 stsp follows:</p>
69 a954aa0a 2021-06-22 stsp <dl class="Bl-tag">
70 51683866 2022-07-14 stsp <dt id="init"><a class="permalink" href="#init"><code class="Cm">init</code></a>
71 3cde8558 2022-09-23 stsp [<code class="Fl">-b</code> <var class="Ar">branch</var>]
72 51683866 2022-07-14 stsp <var class="Ar">repository-path</var></dt>
73 51683866 2022-07-14 stsp <dd>Create a new empty repository at the specified
74 51683866 2022-07-14 stsp <var class="Ar">repository-path</var>.
75 56f3f26e 2024-06-03 stsp <p class="Pp">After <code class="Cm">gotadmin init</code>, the new
76 56f3f26e 2024-06-03 stsp repository must be populated before <code class="Cm">got checkout</code>
77 56f3f26e 2024-06-03 stsp can be used. The <code class="Cm">got import</code> command can be used
78 56f3f26e 2024-06-03 stsp to populate the new repository with data from a local directory.
79 56f3f26e 2024-06-03 stsp Alternatively, on a server running <a class="Xr" aria-label="gotd,
80 56f3f26e 2024-06-03 stsp section 8">gotd(8)</a>, the new repository can be made available to
81 56f3f26e 2024-06-03 stsp <a class="Xr" aria-label="got, section 1">got(1)</a> or
82 56f3f26e 2024-06-03 stsp <a class="Xr" aria-label="git, section 1">git(1)</a> clients by adding
83 56f3f26e 2024-06-03 stsp the repository to <a class="Xr" aria-label="gotd.conf, section
84 56f3f26e 2024-06-03 stsp 5">gotd.conf(5)</a> and restarting <a class="Xr" aria-label="gotd,
85 56f3f26e 2024-06-03 stsp section 8">gotd(8)</a>. Clients may then clone the new repository from
86 56f3f26e 2024-06-03 stsp the server, populate the cloned repository, and then populate the new
87 56f3f26e 2024-06-03 stsp repository on the server via <code class="Cm">got send</code> or
88 56f3f26e 2024-06-03 stsp <code class="Cm">git push</code>.</p>
89 3cde8558 2022-09-23 stsp <p class="Pp">The options for <code class="Cm">gotadmin init</code> are as
90 3cde8558 2022-09-23 stsp follows:</p>
91 3cde8558 2022-09-23 stsp <dl class="Bl-tag">
92 3cde8558 2022-09-23 stsp <dt id="b"><a class="permalink" href="#b"><code class="Fl">-b</code></a>
93 3cde8558 2022-09-23 stsp <var class="Ar">branch</var></dt>
94 3cde8558 2022-09-23 stsp <dd>Make the repository's HEAD reference point to the specified
95 3cde8558 2022-09-23 stsp <var class="Ar">branch</var> instead of the default branch
96 3cde8558 2022-09-23 stsp &#x201C;main&#x201D;.</dd>
97 3cde8558 2022-09-23 stsp </dl>
98 56f3f26e 2024-06-03 stsp <p class="Pp">The <code class="Cm">gotadmin init</code> command is
99 56f3f26e 2024-06-03 stsp equivalent to <code class="Cm">got init</code>.</p>
100 51683866 2022-07-14 stsp </dd>
101 a954aa0a 2021-06-22 stsp <dt id="info"><a class="permalink" href="#info"><code class="Cm">info</code></a>
102 a954aa0a 2021-06-22 stsp [<code class="Fl">-r</code> <var class="Ar">repository-path</var>]</dt>
103 a954aa0a 2021-06-22 stsp <dd>Display information about a repository. This includes some configuration
104 376d4d52 2022-07-04 stsp settings from <a class="Xr" aria-label="got.conf, section
105 376d4d52 2022-07-04 stsp 5">got.conf(5)</a>, and the number of objects stored in the repository, in
106 376d4d52 2022-07-04 stsp packed or loose form, as well as the current on-disk size of these
107 376d4d52 2022-07-04 stsp objects.
108 a954aa0a 2021-06-22 stsp <p class="Pp">The options for <code class="Cm">gotadmin info</code> are as
109 a954aa0a 2021-06-22 stsp follows:</p>
110 a954aa0a 2021-06-22 stsp <dl class="Bl-tag">
111 a954aa0a 2021-06-22 stsp <dt id="r"><a class="permalink" href="#r"><code class="Fl">-r</code></a>
112 a954aa0a 2021-06-22 stsp <var class="Ar">repository-path</var></dt>
113 a954aa0a 2021-06-22 stsp <dd>Use the repository at the specified path. If not specified, assume the
114 46043f6f 2021-11-23 stsp repository is located at or above the current working directory. If
115 376d4d52 2022-07-04 stsp this directory is a <a class="Xr" aria-label="got, section
116 376d4d52 2022-07-04 stsp 1">got(1)</a> work tree, use the repository path associated with this
117 376d4d52 2022-07-04 stsp work tree.</dd>
118 a954aa0a 2021-06-22 stsp </dl>
119 a954aa0a 2021-06-22 stsp </dd>
120 a954aa0a 2021-06-22 stsp <dt id="pack"><a class="permalink" href="#pack"><code class="Cm">pack</code></a>
121 f6a6fa94 2023-02-22 stsp [<code class="Fl">-aDq</code>] [<code class="Fl">-r</code>
122 a954aa0a 2021-06-22 stsp <var class="Ar">repository-path</var>] [<code class="Fl">-x</code>
123 63657f42 2022-09-07 stsp <var class="Ar">reference</var>] [<var class="Ar">reference ...</var>]</dt>
124 a954aa0a 2021-06-22 stsp <dd>Generate a new pack file and a corresponding pack file index. By default,
125 a954aa0a 2021-06-22 stsp add any loose objects which are reachable via any references to the
126 a954aa0a 2021-06-22 stsp generated pack file.
127 a954aa0a 2021-06-22 stsp <p class="Pp">If one or more <var class="Ar">reference</var> arguments is
128 a954aa0a 2021-06-22 stsp specified, only add objects which are reachable via the specified
129 a954aa0a 2021-06-22 stsp references. Each <var class="Ar">reference</var> argument may either
130 a954aa0a 2021-06-22 stsp specify a specific reference or a reference namespace, in which case all
131 a954aa0a 2021-06-22 stsp references within this namespace will be used.</p>
132 a954aa0a 2021-06-22 stsp <p class="Pp"><code class="Cm">gotadmin pack</code> always ignores
133 a954aa0a 2021-06-22 stsp references in the <span class="Pa">refs/got/</span> namespace,
134 a954aa0a 2021-06-22 stsp effectively treating such references as if they did not refer to any
135 a954aa0a 2021-06-22 stsp objects.</p>
136 a954aa0a 2021-06-22 stsp <p class="Pp">The options for <code class="Cm">gotadmin pack</code> are as
137 a954aa0a 2021-06-22 stsp follows:</p>
138 a954aa0a 2021-06-22 stsp <dl class="Bl-tag">
139 a954aa0a 2021-06-22 stsp <dt id="a"><a class="permalink" href="#a"><code class="Fl">-a</code></a></dt>
140 a954aa0a 2021-06-22 stsp <dd>Add objects to the generated pack file even if they are already packed
141 a954aa0a 2021-06-22 stsp in a different pack file. Unless this option is specified, only loose
142 a954aa0a 2021-06-22 stsp objects will be added.</dd>
143 f6a6fa94 2023-02-22 stsp <dt id="D"><a class="permalink" href="#D"><code class="Fl">-D</code></a></dt>
144 f6a6fa94 2023-02-22 stsp <dd>Force the use of ref-delta representation for deltified objects. If
145 f6a6fa94 2023-02-22 stsp this option is not specified, offset-deltas will be used to represent
146 f6a6fa94 2023-02-22 stsp deltified objects.</dd>
147 63657f42 2022-09-07 stsp <dt id="q"><a class="permalink" href="#q"><code class="Fl">-q</code></a></dt>
148 63657f42 2022-09-07 stsp <dd>Suppress progress reporting output.</dd>
149 a954aa0a 2021-06-22 stsp <dt id="r~2"><a class="permalink" href="#r~2"><code class="Fl">-r</code></a>
150 a954aa0a 2021-06-22 stsp <var class="Ar">repository-path</var></dt>
151 a954aa0a 2021-06-22 stsp <dd>Use the repository at the specified path. If not specified, assume the
152 46043f6f 2021-11-23 stsp repository is located at or above the current working directory. If
153 376d4d52 2022-07-04 stsp this directory is a <a class="Xr" aria-label="got, section
154 376d4d52 2022-07-04 stsp 1">got(1)</a> work tree, use the repository path associated with this
155 376d4d52 2022-07-04 stsp work tree.</dd>
156 a954aa0a 2021-06-22 stsp <dt id="x"><a class="permalink" href="#x"><code class="Fl">-x</code></a>
157 a954aa0a 2021-06-22 stsp <var class="Ar">reference</var></dt>
158 a954aa0a 2021-06-22 stsp <dd>Exclude objects reachable via the specified
159 a954aa0a 2021-06-22 stsp <var class="Ar">reference</var> from the pack file. The
160 a954aa0a 2021-06-22 stsp <var class="Ar">reference</var> argument may either specify a specific
161 a954aa0a 2021-06-22 stsp reference or a reference namespace, in which case all references
162 a954aa0a 2021-06-22 stsp within this namespace will be excluded. The <code class="Fl">-x</code>
163 a954aa0a 2021-06-22 stsp option may be specified multiple times to build a list of references
164 a954aa0a 2021-06-22 stsp to exclude.
165 a954aa0a 2021-06-22 stsp <p class="Pp">Exclusion takes precedence over inclusion. If a reference
166 a954aa0a 2021-06-22 stsp appears in both the included and excluded lists, it will be
167 a954aa0a 2021-06-22 stsp excluded.</p>
168 a954aa0a 2021-06-22 stsp </dd>
169 a954aa0a 2021-06-22 stsp </dl>
170 a954aa0a 2021-06-22 stsp </dd>
171 63b69821 2021-10-16 stsp <dt id="ix"><a class="permalink" href="#indexpack"><code class="Cm" id="indexpack">indexpack</code></a>
172 a954aa0a 2021-06-22 stsp <var class="Ar">packfile-path</var></dt>
173 63b69821 2021-10-16 stsp <dd>
174 63b69821 2021-10-16 stsp <div class="Bd Bd-indent"><code class="Li">(alias:
175 46043f6f 2021-11-23 stsp <code class="Cm">ix</code>)</code></div>
176 46043f6f 2021-11-23 stsp Create a pack index for the pack file at
177 a954aa0a 2021-06-22 stsp <var class="Ar">packfile-path</var>.
178 a954aa0a 2021-06-22 stsp <p class="Pp">A pack index is required for using the corresponding pack file
179 376d4d52 2022-07-04 stsp with <a class="Xr" aria-label="got, section 1">got(1)</a>. Usually, a
180 376d4d52 2022-07-04 stsp pack index will be created by commands such as <code class="Cm">gotadmin
181 376d4d52 2022-07-04 stsp pack</code> or <code class="Cm">got fetch</code> as part of regular
182 376d4d52 2022-07-04 stsp operation. The <code class="Cm">gotadmin indexpack</code> command may be
183 376d4d52 2022-07-04 stsp used to recover from a corrupt or missing index. A given pack file will
184 376d4d52 2022-07-04 stsp always yield the same bit-identical index.</p>
185 a954aa0a 2021-06-22 stsp <p class="Pp">The provided <var class="Ar">packfile-path</var> must be
186 a954aa0a 2021-06-22 stsp located within the <span class="Pa">objects/pack/</span> directory of
187 a954aa0a 2021-06-22 stsp the repository and should end in <span class="Pa">.pack</span>. The
188 a954aa0a 2021-06-22 stsp filename of the corresponding pack index is equivalent, except that it
189 a954aa0a 2021-06-22 stsp ends in <span class="Pa">.idx</span>.</p>
190 a954aa0a 2021-06-22 stsp </dd>
191 63b69821 2021-10-16 stsp <dt id="ls"><a class="permalink" href="#listpack"><code class="Cm" id="listpack">listpack</code></a>
192 63657f42 2022-09-07 stsp [<code class="Fl">-hs</code>] <var class="Ar">packfile-path</var></dt>
193 63b69821 2021-10-16 stsp <dd>
194 63b69821 2021-10-16 stsp <div class="Bd Bd-indent"><code class="Li">(alias:
195 46043f6f 2021-11-23 stsp <code class="Cm">ls</code>)</code></div>
196 46043f6f 2021-11-23 stsp List the contents of the pack file at <var class="Ar">packfile-path</var>.
197 a954aa0a 2021-06-22 stsp <p class="Pp">Each object contained in the pack file will be displayed on a
198 a954aa0a 2021-06-22 stsp single line. The information shown includes the object ID, object type,
199 a954aa0a 2021-06-22 stsp object offset, and object size.</p>
200 b078d5c4 2022-03-23 stsp <p class="Pp">If a packed object is deltified against another object, the
201 a954aa0a 2021-06-22 stsp delta base will be shown as well. For offset deltas, the delta base is
202 a954aa0a 2021-06-22 stsp identified via an offset into the pack file. For reference deltas, the
203 a954aa0a 2021-06-22 stsp delta base is identified via an object ID.</p>
204 a954aa0a 2021-06-22 stsp <p class="Pp">The provided <var class="Ar">packfile-path</var> must be
205 a954aa0a 2021-06-22 stsp located within the <span class="Pa">objects/pack/</span> directory of
206 b078d5c4 2022-03-23 stsp the repository and should end in <span class="Pa">.pack</span>. The
207 b078d5c4 2022-03-23 stsp corresponding pack index must exist and can be created with
208 b078d5c4 2022-03-23 stsp <code class="Cm">gotadmin indexpack</code> if it is missing.</p>
209 a954aa0a 2021-06-22 stsp <p class="Pp">The options for <code class="Cm">gotadmin listpack</code> are
210 a954aa0a 2021-06-22 stsp as follows:</p>
211 a954aa0a 2021-06-22 stsp <dl class="Bl-tag">
212 a954aa0a 2021-06-22 stsp <dt id="h~2"><a class="permalink" href="#h~2"><code class="Fl">-h</code></a></dt>
213 a954aa0a 2021-06-22 stsp <dd>Show object sizes in human-readable form.</dd>
214 a954aa0a 2021-06-22 stsp <dt id="s"><a class="permalink" href="#s"><code class="Fl">-s</code></a></dt>
215 a954aa0a 2021-06-22 stsp <dd>Display statistics about the pack file after listing objects. This
216 a954aa0a 2021-06-22 stsp includes the total number of objects stored in the pack file and a
217 a954aa0a 2021-06-22 stsp break-down of the number of objects per object type.</dd>
218 a954aa0a 2021-06-22 stsp </dl>
219 a954aa0a 2021-06-22 stsp </dd>
220 63b69821 2021-10-16 stsp <dt id="cl"><a class="permalink" href="#cleanup"><code class="Cm" id="cleanup">cleanup</code></a>
221 63657f42 2022-09-07 stsp [<code class="Fl">-anpq</code>] [<code class="Fl">-r</code>
222 63657f42 2022-09-07 stsp <var class="Ar">repository-path</var>]</dt>
223 63b69821 2021-10-16 stsp <dd>
224 63b69821 2021-10-16 stsp <div class="Bd Bd-indent"><code class="Li">(alias:
225 46043f6f 2021-11-23 stsp <code class="Cm">cl</code>)</code></div>
226 41ae98c9 2023-06-23 stsp Purge unreferenced loose objects and redundant pack files from the
227 41ae98c9 2023-06-23 stsp repository and display the amount of disk space which has been freed as a
228 41ae98c9 2023-06-23 stsp result.
229 16cd1323 2021-07-26 stsp <p class="Pp">Unreferenced objects are present in the repository but cannot
230 16cd1323 2021-07-26 stsp be reached via any reference in the entire <span class="Pa">refs/</span>
231 41ae98c9 2023-06-23 stsp namespace. Objects will usually become unreferenced as a result of
232 41ae98c9 2023-06-23 stsp deleting branches, tags, or other references with <code class="Cm">got
233 41ae98c9 2023-06-23 stsp branch -d</code>, <code class="Cm">got ref -d</code>, or
234 41ae98c9 2023-06-23 stsp <code class="Cm">got fetch -X</code>.</p>
235 16cd1323 2021-07-26 stsp <p class="Pp">Loose objects are stored as individual files beneath the
236 16cd1323 2021-07-26 stsp repository's <span class="Pa">objects/</span> directory, spread across
237 16cd1323 2021-07-26 stsp 256 sub-directories named after the 256 possible hexadecimal values of
238 16cd1323 2021-07-26 stsp the first byte of an object identifier.</p>
239 41ae98c9 2023-06-23 stsp <p class="Pp">Packed objects are stored in pack files under
240 41ae98c9 2023-06-23 stsp <span class="Pa">objects/pack/</span>.</p>
241 41ae98c9 2023-06-23 stsp <p class="Pp">If redundant copies of packed objects exist in loose form,
242 41ae98c9 2023-06-23 stsp such redundant copies will be purged. If all the objects of a pack file
243 41ae98c9 2023-06-23 stsp are present in other pack files, the redundant pack file will be purged.
244 41ae98c9 2023-06-23 stsp Pack files will usually become redundant as a result of repacking the
245 41ae98c9 2023-06-23 stsp repository with <code class="Nm">gotadmin</code>
246 41ae98c9 2023-06-23 stsp <code class="Cm">pack</code> <code class="Fl">-a</code>.</p>
247 16cd1323 2021-07-26 stsp <p class="Pp">References in the <span class="Pa">refs/got</span> namespace
248 16cd1323 2021-07-26 stsp may prevent objects from being purged. This includes references in the
249 16cd1323 2021-07-26 stsp <span class="Pa">refs/got/worktree</span> namespace created by
250 16cd1323 2021-07-26 stsp <code class="Cm">got checkout</code> and <code class="Cm">got
251 16cd1323 2021-07-26 stsp update</code>, as well as references in the
252 16cd1323 2021-07-26 stsp <span class="Pa">refs/got/backup</span> namespace created by
253 16cd1323 2021-07-26 stsp <code class="Cm">got rebase</code> and <code class="Cm">got
254 16cd1323 2021-07-26 stsp histedit</code>. <code class="Cm">gotadmin cleanup</code> will only
255 16cd1323 2021-07-26 stsp purge corresponding objects once such references have been deleted with
256 41ae98c9 2023-06-23 stsp <code class="Cm">got rebase -X</code>, <code class="Cm">got histedit
257 41ae98c9 2023-06-23 stsp -X</code>, or <code class="Cm">got ref -d</code>.</p>
258 41ae98c9 2023-06-23 stsp <p class="Pp">The &#x201C;preciousObjects&#x201D; Git extension is intended
259 41ae98c9 2023-06-23 stsp to prevent the removal of objects from a repository.
260 41ae98c9 2023-06-23 stsp <code class="Cm">gotadmin cleanup</code> will refuse to operate on
261 41ae98c9 2023-06-23 stsp repositories where this extension is active.</p>
262 41ae98c9 2023-06-23 stsp <p class="Pp">For compatibility with Git, if a file with the extension
263 41ae98c9 2023-06-23 stsp <span class="Pa">.keep</span> exists and corresponds to a pack file with
264 41ae98c9 2023-06-23 stsp the extension <span class="Pa">.pack</span> then this pack file will not
265 41ae98c9 2023-06-23 stsp be removed.</p>
266 16cd1323 2021-07-26 stsp <p class="Pp">Some Git repositories contain pack index files which lack a
267 16cd1323 2021-07-26 stsp corresponding pack file, which is an inconsistent repository state. In
268 16cd1323 2021-07-26 stsp such cases, <code class="Cm">gotadmin cleanup -p -n</code> will display
269 b078d5c4 2022-03-23 stsp a list of affected pack index files. Whenever possible, the missing pack
270 16cd1323 2021-07-26 stsp files should be restored. If restoring missing pack files is not
271 b078d5c4 2022-03-23 stsp possible, then affected pack index files can be removed with
272 16cd1323 2021-07-26 stsp <code class="Cm">gotadmin cleanup -p</code>.</p>
273 16cd1323 2021-07-26 stsp <p class="Pp">The options for <code class="Cm">gotadmin cleanup</code> are
274 16cd1323 2021-07-26 stsp as follows:</p>
275 16cd1323 2021-07-26 stsp <dl class="Bl-tag">
276 def5be4a 2021-08-31 stsp <dt id="a~2"><a class="permalink" href="#a~2"><code class="Fl">-a</code></a></dt>
277 c8cf51c9 2023-11-29 stsp <dd>Delete all redundant loose and packed objects. By default, objects
278 c8cf51c9 2023-11-29 stsp which are newer than an implementation-defined modification timestamp
279 c8cf51c9 2023-11-29 stsp are kept on disk to prevent race conditions with other commands that
280 c8cf51c9 2023-11-29 stsp add new objects to the repository while <code class="Cm">gotadmin
281 c8cf51c9 2023-11-29 stsp cleanup</code> is running.</dd>
282 16cd1323 2021-07-26 stsp <dt id="n"><a class="permalink" href="#n"><code class="Fl">-n</code></a></dt>
283 16cd1323 2021-07-26 stsp <dd>Display the usual progress output and summary information but do not
284 16cd1323 2021-07-26 stsp actually remove any files from disk.</dd>
285 63657f42 2022-09-07 stsp <dt id="p"><a class="permalink" href="#p"><code class="Fl">-p</code></a></dt>
286 41ae98c9 2023-06-23 stsp <dd>Instead of purging unreferenced loose objects and redundant pack
287 41ae98c9 2023-06-23 stsp files, remove any pack index files which do not have a corresponding
288 41ae98c9 2023-06-23 stsp pack file.</dd>
289 63657f42 2022-09-07 stsp <dt id="q~2"><a class="permalink" href="#q~2"><code class="Fl">-q</code></a></dt>
290 63657f42 2022-09-07 stsp <dd>Suppress progress reporting and disk space summary output.</dd>
291 16cd1323 2021-07-26 stsp <dt id="r~3"><a class="permalink" href="#r~3"><code class="Fl">-r</code></a>
292 16cd1323 2021-07-26 stsp <var class="Ar">repository-path</var></dt>
293 16cd1323 2021-07-26 stsp <dd>Use the repository at the specified path. If not specified, assume the
294 46043f6f 2021-11-23 stsp repository is located at or above the current working directory. If
295 376d4d52 2022-07-04 stsp this directory is a <a class="Xr" aria-label="got, section
296 376d4d52 2022-07-04 stsp 1">got(1)</a> work tree, use the repository path associated with this
297 376d4d52 2022-07-04 stsp work tree.</dd>
298 16cd1323 2021-07-26 stsp </dl>
299 16cd1323 2021-07-26 stsp </dd>
300 461d9094 2023-07-19 stsp <dt id="dump"><a class="permalink" href="#dump"><code class="Cm">dump</code></a>
301 461d9094 2023-07-19 stsp [<code class="Fl">-q</code>] [<code class="Fl">-r</code>
302 461d9094 2023-07-19 stsp <var class="Ar">repository-path</var>] [<code class="Fl">-x</code>
303 461d9094 2023-07-19 stsp <var class="Ar">reference</var>] [<var class="Ar">reference ...</var>]</dt>
304 461d9094 2023-07-19 stsp <dd>Dump the contents of the repository to standard output in Git bundle
305 461d9094 2023-07-19 stsp format.
306 461d9094 2023-07-19 stsp <p class="Pp">If one or more <var class="Ar">reference</var> arguments is
307 461d9094 2023-07-19 stsp specified, only add objects which are reachable via the specified
308 461d9094 2023-07-19 stsp references. Each <var class="Ar">reference</var> argument may either
309 461d9094 2023-07-19 stsp specify a specific reference or a reference namespace, in which case all
310 461d9094 2023-07-19 stsp references within this namespace will be used.</p>
311 461d9094 2023-07-19 stsp <p class="Pp">The options for <code class="Nm">gotadmin</code>
312 461d9094 2023-07-19 stsp <code class="Cm">dump</code> are as follows:</p>
313 461d9094 2023-07-19 stsp <dl class="Bl-tag">
314 461d9094 2023-07-19 stsp <dt id="q~3"><a class="permalink" href="#q~3"><code class="Fl">-q</code></a></dt>
315 461d9094 2023-07-19 stsp <dd>Suppress progress reporting output.</dd>
316 461d9094 2023-07-19 stsp <dt id="r~4"><a class="permalink" href="#r~4"><code class="Fl">-r</code></a>
317 461d9094 2023-07-19 stsp <var class="Ar">repository-path</var></dt>
318 461d9094 2023-07-19 stsp <dd>Use the repository at the specified path. If not specified, assume the
319 461d9094 2023-07-19 stsp repository is located at or above the current working directory. If
320 461d9094 2023-07-19 stsp this directory is a <a class="Xr" aria-label="got, section
321 461d9094 2023-07-19 stsp 1">got(1)</a> work tree, use the repository path associated with this
322 461d9094 2023-07-19 stsp work tree.</dd>
323 461d9094 2023-07-19 stsp <dt id="x~2"><a class="permalink" href="#x~2"><code class="Fl">-x</code></a>
324 461d9094 2023-07-19 stsp <var class="Ar">reference</var></dt>
325 461d9094 2023-07-19 stsp <dd>Exclude objects reachable via the specified
326 461d9094 2023-07-19 stsp <var class="Ar">reference</var> from the bundle. The
327 461d9094 2023-07-19 stsp <var class="Ar">reference</var> argument may either specify a specific
328 461d9094 2023-07-19 stsp reference or a reference namespace, in which case all references
329 461d9094 2023-07-19 stsp within this namespace will be excluded. The <code class="Fl">-x</code>
330 461d9094 2023-07-19 stsp option may be specified multiple times to build a list of references
331 461d9094 2023-07-19 stsp to exclude.
332 461d9094 2023-07-19 stsp <p class="Pp">Exclusion takes precedence over inclusion. If a reference
333 461d9094 2023-07-19 stsp appears in both the included and excluded lists, it will be
334 461d9094 2023-07-19 stsp excluded.</p>
335 461d9094 2023-07-19 stsp </dd>
336 461d9094 2023-07-19 stsp </dl>
337 461d9094 2023-07-19 stsp </dd>
338 461d9094 2023-07-19 stsp <dt id="load"><a class="permalink" href="#load"><code class="Cm">load</code></a>
339 461d9094 2023-07-19 stsp [<code class="Fl">-nq</code>] [<code class="Fl">-l</code>
340 461d9094 2023-07-19 stsp <var class="Ar">bundle-path</var>] [<code class="Fl">-r</code>
341 461d9094 2023-07-19 stsp <var class="Ar">repository-path</var>] [<var class="Ar">reference
342 461d9094 2023-07-19 stsp ...</var>]</dt>
343 461d9094 2023-07-19 stsp <dd>Read a Git bundle stream from standard input and load its data into a
344 461d9094 2023-07-19 stsp repository.
345 461d9094 2023-07-19 stsp <p class="Pp">If one or more <var class="Ar">reference</var> arguments are
346 461d9094 2023-07-19 stsp provided then only load the specified references from the bundle.
347 461d9094 2023-07-19 stsp Otherwise, all references will be loaded.</p>
348 461d9094 2023-07-19 stsp <p class="Pp">The options for <code class="Cm">gotadmin load</code> are as
349 461d9094 2023-07-19 stsp follows:</p>
350 461d9094 2023-07-19 stsp <dl class="Bl-tag">
351 461d9094 2023-07-19 stsp <dt id="l"><a class="permalink" href="#l"><code class="Fl">-l</code></a>
352 461d9094 2023-07-19 stsp <var class="Ar">bundle-path</var></dt>
353 461d9094 2023-07-19 stsp <dd>List references available for loading from the bundle at the specified
354 461d9094 2023-07-19 stsp <var class="Ar">bundle-path</var> and exit immediately. If the
355 461d9094 2023-07-19 stsp <code class="Fl">-l</code> option is specified then no
356 461d9094 2023-07-19 stsp <var class="Ar">reference</var> arguments are allowed. The
357 461d9094 2023-07-19 stsp <code class="Fl">-l</code> option is incompatible with the
358 461d9094 2023-07-19 stsp <code class="Fl">-n</code> option.</dd>
359 461d9094 2023-07-19 stsp <dt id="n~2"><a class="permalink" href="#n~2"><code class="Fl">-n</code></a></dt>
360 461d9094 2023-07-19 stsp <dd>Attempt to load the bundle but don't install new packfile or update
361 461d9094 2023-07-19 stsp any reference. Can be used to verify the integrity of the bundle.</dd>
362 461d9094 2023-07-19 stsp <dt id="q~4"><a class="permalink" href="#q~4"><code class="Fl">-q</code></a></dt>
363 461d9094 2023-07-19 stsp <dd>Suppress progress reporting output.</dd>
364 461d9094 2023-07-19 stsp <dt id="r~5"><a class="permalink" href="#r~5"><code class="Fl">-r</code></a>
365 461d9094 2023-07-19 stsp <var class="Ar">repository-path</var></dt>
366 461d9094 2023-07-19 stsp <dd>Use the repository at the specified path. If not specified, assume the
367 461d9094 2023-07-19 stsp repository is located at or above the current working directory. If
368 461d9094 2023-07-19 stsp this directory is a <a class="Xr" aria-label="got, section
369 461d9094 2023-07-19 stsp 1">got(1)</a> work tree, use the repository path associated with this
370 461d9094 2023-07-19 stsp work tree.</dd>
371 461d9094 2023-07-19 stsp </dl>
372 461d9094 2023-07-19 stsp </dd>
373 a954aa0a 2021-06-22 stsp </dl>
374 a954aa0a 2021-06-22 stsp </section>
375 a954aa0a 2021-06-22 stsp <section class="Sh">
376 63657f42 2022-09-07 stsp <h2 class="Sh" id="EXIT_STATUS"><a class="permalink" href="#EXIT_STATUS">EXIT
377 63657f42 2022-09-07 stsp STATUS</a></h2>
378 a954aa0a 2021-06-22 stsp <p class="Pp">The <code class="Nm">gotadmin</code> utility exits&#x00A0;0 on
379 a954aa0a 2021-06-22 stsp success, and&#x00A0;&gt;0 if an error occurs.</p>
380 a954aa0a 2021-06-22 stsp </section>
381 a954aa0a 2021-06-22 stsp <section class="Sh">
382 63657f42 2022-09-07 stsp <h2 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
383 63657f42 2022-09-07 stsp ALSO</a></h2>
384 376d4d52 2022-07-04 stsp <p class="Pp"><a class="Xr" aria-label="got, section 1">got(1)</a>,
385 376d4d52 2022-07-04 stsp <a class="Xr" aria-label="tog, section 1">tog(1)</a>,
386 376d4d52 2022-07-04 stsp <a class="Xr" aria-label="git-repository, section 5">git-repository(5)</a>,
387 376d4d52 2022-07-04 stsp <a class="Xr" aria-label="got.conf, section 5">got.conf(5)</a></p>
388 a954aa0a 2021-06-22 stsp </section>
389 a954aa0a 2021-06-22 stsp <section class="Sh">
390 63657f42 2022-09-07 stsp <h2 class="Sh" id="AUTHORS"><a class="permalink" href="#AUTHORS">AUTHORS</a></h2>
391 51683866 2022-07-14 stsp <p class="Pp"><span class="An">Christian Weisgerber</span>
392 51683866 2022-07-14 stsp &lt;<a class="Mt" href="mailto:naddy@openbsd.org">naddy@openbsd.org</a>&gt;
393 a954aa0a 2021-06-22 stsp <br/>
394 51683866 2022-07-14 stsp <span class="An">Josh Rickmar</span>
395 51683866 2022-07-14 stsp &lt;<a class="Mt" href="mailto:jrick@zettaport.com">jrick@zettaport.com</a>&gt;
396 51683866 2022-07-14 stsp <br/>
397 51683866 2022-07-14 stsp <span class="An">Klemens Nanni</span>
398 51683866 2022-07-14 stsp &lt;<a class="Mt" href="mailto:kn@openbsd.org">kn@openbsd.org</a>&gt;
399 51683866 2022-07-14 stsp <br/>
400 41ae98c9 2023-06-23 stsp <span class="An">Omar Polo</span>
401 41ae98c9 2023-06-23 stsp &lt;<a class="Mt" href="mailto:op@openbsd.org">op@openbsd.org</a>&gt;
402 41ae98c9 2023-06-23 stsp <br/>
403 a954aa0a 2021-06-22 stsp <span class="An">Ori Bernstein</span>
404 51683866 2022-07-14 stsp &lt;<a class="Mt" href="mailto:ori@openbsd.org">ori@openbsd.org</a>&gt;
405 51683866 2022-07-14 stsp <br/>
406 51683866 2022-07-14 stsp <span class="An">Stefan Sperling</span>
407 51683866 2022-07-14 stsp &lt;<a class="Mt" href="mailto:stsp@openbsd.org">stsp@openbsd.org</a>&gt;
408 51683866 2022-07-14 stsp <br/>
409 51683866 2022-07-14 stsp <span class="An">Tracey Emery</span>
410 51683866 2022-07-14 stsp &lt;<a class="Mt" href="mailto:tracey@traceyemery.net">tracey@traceyemery.net</a>&gt;</p>
411 a954aa0a 2021-06-22 stsp </section>
412 16cd1323 2021-07-26 stsp <section class="Sh">
413 63657f42 2022-09-07 stsp <h2 class="Sh" id="CAVEATS"><a class="permalink" href="#CAVEATS">CAVEATS</a></h2>
414 16cd1323 2021-07-26 stsp <p class="Pp"><code class="Nm">gotadmin</code> is a work-in-progress and some
415 16cd1323 2021-07-26 stsp features remain to be implemented.</p>
416 376d4d52 2022-07-04 stsp <p class="Pp">At present, the user has to fall back on
417 376d4d52 2022-07-04 stsp <a class="Xr" aria-label="git, section 1">git(1)</a> to perform some tasks.
418 376d4d52 2022-07-04 stsp In particular:</p>
419 16cd1323 2021-07-26 stsp <ul class="Bl-bullet">
420 16cd1323 2021-07-26 stsp <li>Exporting data from repositories requires
421 376d4d52 2022-07-04 stsp <a class="Xr" aria-label="git-fast-export, section
422 376d4d52 2022-07-04 stsp 1">git-fast-export(1)</a>.</li>
423 16cd1323 2021-07-26 stsp <li>Importing data into repositories requires
424 376d4d52 2022-07-04 stsp <a class="Xr" aria-label="git-fast-import, section
425 376d4d52 2022-07-04 stsp 1">git-fast-import(1)</a>.</li>
426 16cd1323 2021-07-26 stsp </ul>
427 16cd1323 2021-07-26 stsp </section>
428 16cd1323 2021-07-26 stsp <section class="Sh">
429 63657f42 2022-09-07 stsp <h2 class="Sh" id="BUGS"><a class="permalink" href="#BUGS">BUGS</a></h2>
430 16cd1323 2021-07-26 stsp <p class="Pp">Disk space savings reported by <code class="Cm">gotadmin
431 16cd1323 2021-07-26 stsp cleanup</code> will be misleading if the repository contains object files
432 16cd1323 2021-07-26 stsp that were hard-linked from another repository. Such hard-links will be
433 376d4d52 2022-07-04 stsp created by certain <a class="Xr" aria-label="git, section 1">git(1)</a>
434 376d4d52 2022-07-04 stsp commands. By itself, <a class="Xr" aria-label="got, section 1">got(1)</a>
435 376d4d52 2022-07-04 stsp will never create hard-linked object files.</p>
436 16cd1323 2021-07-26 stsp </section>
437 63657f42 2022-09-07 stsp </main>
438 63657f42 2022-09-07 stsp <div class="foot" role="doc-pagefooter" aria-label="Manual footer
439 56f3f26e 2024-06-03 stsp line"><span class="foot-left"></span><span class="foot-date">June 3,
440 2b1d45b9 2024-03-11 stsp 2024</span> <span class="foot-os">OpenBSD 7.5</span></div>
441 a954aa0a 2021-06-22 stsp </body>
442 a954aa0a 2021-06-22 stsp </html>