Commit Diff


commit - 4ce11894649c3fdf5a3a23442e6a22b8564fb1c6
commit + def5be4aadc523fb06cc518f5a474b31317c3a80
blob - 2798429e876babacc3721592a2208f90615b8299
blob + 00731b881a126ef7bb1e27882f24a7309c0d1802
--- git-repository.5.html
+++ git-repository.5.html
@@ -219,8 +219,8 @@
 </div>
 <table class="foot">
   <tr>
-    <td class="foot-date">July 26, 2021</td>
-    <td class="foot-os">OpenBSD 6.9</td>
+    <td class="foot-date">August 31, 2021</td>
+    <td class="foot-os">OpenBSD 7.0</td>
   </tr>
 </table>
 </body>
blob - 8f88f9a971c0004540365afc05bf1f03efa41558
blob + e5faf2d3b241076853ed96c519591943dc5a75c8
--- got-worktree.5.html
+++ got-worktree.5.html
@@ -192,8 +192,8 @@
 </div>
 <table class="foot">
   <tr>
-    <td class="foot-date">July 26, 2021</td>
-    <td class="foot-os">OpenBSD 6.9</td>
+    <td class="foot-date">August 31, 2021</td>
+    <td class="foot-os">OpenBSD 7.0</td>
   </tr>
 </table>
 </body>
blob - 770fb11dd8b69572909351aefb4a07dfd00e8f55
blob + dd66a0796c152d5fff8b41f87e9cb714ae161654
--- got.1.html
+++ got.1.html
@@ -940,8 +940,12 @@
   <dd>Create, list, or delete branches.
     <p class="Pp">Local branches are managed via references which live in the
         &#x201C;refs/heads/&#x201D; reference namespace. The
-        <code class="Cm">got branch</code> command creates or deletes references
-        in this namespace only.</p>
+        <code class="Cm">got branch</code> command creates references in this
+        namespace only.</p>
+    <p class="Pp">When deleting branches the specified
+        <var class="Ar">name</var> is searched in the &#x201C;refs/heads&#x201D;
+        reference namespace first. If no corresponding branch is found the
+        &#x201C;refs/remotes&#x201D; namespace will be searched next.</p>
     <p class="Pp">If invoked in a work tree without any arguments, print the
         name of the work tree's current branch.</p>
     <p class="Pp">If a <var class="Ar">name</var> argument is passed, attempt to
@@ -1020,11 +1024,14 @@
       </dd>
       <dt id="d~3"><a class="permalink" href="#d~3"><code class="Fl">-d</code></a>
         <var class="Ar">name</var></dt>
-      <dd>Delete the branch with the specified name from the repository. Only
-          the branch reference is deleted. Any commit, tree, and blob objects
-          belonging to the branch remain in the repository and may be removed
-          separately with Git's garbage collector or <code class="Cm">gotadmin
-          cleanup</code>.</dd>
+      <dd>Delete the branch with the specified <var class="Ar">name</var> from
+          the &#x201C;refs/heads&#x201D; or &#x201C;refs/remotes&#x201D;
+          reference namespace.
+        <p class="Pp">Only the branch reference is deleted. Any commit, tree,
+            and blob objects belonging to the branch remain in the repository
+            and may be removed separately with Git's garbage collector or
+            <code class="Cm">gotadmin cleanup</code>.</p>
+      </dd>
       <dt id="n"><a class="permalink" href="#n"><code class="Fl">-n</code></a></dt>
       <dd>Do not switch and update the work tree after creating a new
         branch.</dd>
@@ -1271,6 +1278,134 @@
   </dd>
   <dt id="ci"><a class="permalink" href="#ci"><code class="Cm">ci</code></a></dt>
   <dd>Short alias for <code class="Cm">commit</code>.</dd>
+  <dt id="send"><a class="permalink" href="#send"><code class="Cm">send</code></a>
+    [<code class="Fl">-a</code>] [<code class="Fl">-b</code>
+    <var class="Ar">branch</var>] [<code class="Fl">-d</code>
+    <var class="Ar">branch</var>] [<code class="Fl">-f</code>]
+    [<code class="Fl">-r</code> <var class="Ar">repository-path</var>]
+    [<code class="Fl">-t</code> <var class="Ar">tag</var>]
+    [<code class="Fl">-T</code>] [<code class="Fl">-q</code>]
+    [<code class="Fl">-v</code>] [<var class="Ar">remote-repository</var>]</dt>
+  <dd>Send new changes to a remote repository. If no
+      <var class="Ar">remote-repository</var> is specified,
+      &#x201C;origin&#x201D; will be used. The remote repository's URL is
+      obtained from the corresponding entry in <a class="Xr">got.conf(5)</a> or
+      Git's <span class="Pa">config</span> file of the local repository, as
+      created by <code class="Cm">got clone</code>.
+    <p class="Pp">All objects corresponding to new changes will be written to a
+        temporary pack file which is then uploaded to the server. Upon success,
+        references in the &#x201C;refs/remotes/&#x201D; reference namespace of
+        the local repository will be updated to point at the commits which have
+        been sent.</p>
+    <p class="Pp">By default, changes will only be sent if they are based on
+        up-to-date copies of relevant branches in the remote repository. If any
+        changes to be sent are based on out-of-date copies or would otherwise
+        break linear history of existing branches, new changes must be fetched
+        from the server with <code class="Cm">got fetch</code> and local
+        branches must be rebased with <code class="Cm">got rebase</code> before
+        <code class="Cm">got send</code> can succeed. The
+        <code class="Fl">-f</code> option can be used to make exceptions to
+        these requirements.</p>
+    <p class="Pp">The options for <code class="Cm">got send</code> are as
+        follows:</p>
+    <dl class="Bl-tag">
+      <dt id="a~4"><a class="permalink" href="#a~4"><code class="Fl">-a</code></a></dt>
+      <dd>Send all branches from the local repository's
+          &#x201C;refs/heads/&#x201D; reference namespace. The
+          <code class="Fl">-a</code> option is equivalent to listing all
+          branches with multiple <code class="Fl">-b</code> options. Cannot be
+          used together with the <code class="Fl">-b</code> option.</dd>
+      <dt id="b~7"><a class="permalink" href="#b~7"><code class="Fl">-b</code></a>
+        <var class="Ar">branch</var></dt>
+      <dd>Send the specified <var class="Ar">branch</var> from the local
+          repository's &#x201C;refs/heads/&#x201D; reference namespace. This
+          option may be specified multiple times to build a list of branches to
+          send. If this option is not specified, default to the work tree's
+          current branch if invoked in a work tree, or to the repository's HEAD
+          reference. Cannot be used together with the <code class="Fl">-a</code>
+          option.</dd>
+      <dt id="d~4"><a class="permalink" href="#d~4"><code class="Fl">-d</code></a>
+        <var class="Ar">branch</var></dt>
+      <dd>Delete the specified <var class="Ar">branch</var> from the remote
+          repository's &#x201C;refs/heads/&#x201D; reference namespace. This
+          option may be specified multiple times to build a list of branches to
+          delete.
+        <p class="Pp">Only references are deleted. Any commit, tree, tag, and
+            blob objects belonging to deleted branches may become subject to
+            deletion by Git's garbage collector running on the server.</p>
+        <p class="Pp">Requesting deletion of branches results in an error if the
+            server does not support this feature or disallows the deletion of
+            branches based on its configuration.</p>
+      </dd>
+      <dt id="f~2"><a class="permalink" href="#f~2"><code class="Fl">-f</code></a></dt>
+      <dd>Attempt to force the server to overwrite existing branches or tags in
+          the remote repository, even when <code class="Cm">got fetch</code> and
+          <code class="Cm">got rebase</code> would usually be required before
+          changes can be sent. The server may reject forced requests regardless,
+          depending on its configuration.
+        <p class="Pp">Any commit, tree, tag, and blob objects belonging to
+            overwritten branches or tags may become subject to deletion by Git's
+            garbage collector running on the server.</p>
+        <p class="Pp">The &#x201C;refs/tags&#x201D; reference namespace is
+            globally shared between all repositories. Use of the
+            <code class="Fl">-f</code> option to overwrite tags is discouraged
+            because it can lead to inconsistencies between the tags present in
+            different repositories. In general, creating a new tag with a
+            different name is recommended instead of overwriting an existing
+            tag.</p>
+        <p class="Pp">Use of the <code class="Fl">-f</code> option is
+            particularly discouraged if changes being sent are based on an
+            out-of-date copy of a branch in the remote repository. Instead of
+            using the <code class="Fl">-f</code> option, new changes should be
+            fetched with <code class="Cm">got fetch</code> and local branches
+            should be rebased with <code class="Cm">got rebase</code>, followed
+            by another attempt to send the changes.</p>
+        <p class="Pp">The <code class="Fl">-f</code> option should only be
+            needed in situations where the remote repository's copy of a branch
+            or tag is known to be out-of-date and is considered disposable. The
+            risks of creating inconsistencies between different repositories
+            should also be taken into account.</p>
+      </dd>
+      <dt id="r~10"><a class="permalink" href="#r~10"><code class="Fl">-r</code></a>
+        <var class="Ar">repository-path</var></dt>
+      <dd>Use the repository at the specified path. If not specified, assume the
+          repository is located at or above the current working directory. If
+          this directory is a <code class="Nm">got</code> work tree, use the
+          repository path associated with this work tree.</dd>
+      <dt id="t~2"><a class="permalink" href="#t~2"><code class="Fl">-t</code></a>
+        <var class="Ar">tag</var></dt>
+      <dd>Send the specified <var class="Ar">tag</var> from the local
+          repository's &#x201C;refs/tags/&#x201D; reference namespace, in
+          addition to any branches that are being sent. The
+          <code class="Fl">-t</code> option may be specified multiple times to
+          build a list of tags to send. No tags will be sent if the
+          <code class="Fl">-t</code> option is not used.
+        <p class="Pp">Raise an error if the specified <var class="Ar">tag</var>
+            already exists in the remote repository, unless the
+            <code class="Fl">-f</code> option is used to overwrite the server's
+            copy of the tag. In general, creating a new tag with a different
+            name is recommended instead of overwriting an existing tag.</p>
+        <p class="Pp">Cannot be used together with the
+            <code class="Fl">-T</code> option.</p>
+      </dd>
+      <dt id="T"><a class="permalink" href="#T"><code class="Fl">-T</code></a></dt>
+      <dd>Attempt to send all tags from the local repository's
+          &#x201C;refs/tags/&#x201D; reference namespace. The
+          <code class="Fl">-T</code> option is equivalent to listing all tags
+          with multiple <code class="Fl">-t</code> options. Cannot be used
+          together with the <code class="Fl">-t</code> option.</dd>
+      <dt id="q~3"><a class="permalink" href="#q~3"><code class="Fl">-q</code></a></dt>
+      <dd>Suppress progress reporting output. The same option will be passed to
+          <a class="Xr">ssh(1)</a> if applicable.</dd>
+      <dt id="v~3"><a class="permalink" href="#v~3"><code class="Fl">-v</code></a></dt>
+      <dd>Verbose mode. Causes <code class="Cm">got send</code> to print
+          debugging messages to standard error output. The same option will be
+          passed to <a class="Xr">ssh(1)</a> if applicable. Multiple -v options
+          increase the verbosity. The maximum is 3.</dd>
+    </dl>
+  </dd>
+  <dt id="se"><a class="permalink" href="#se"><code class="Cm">se</code></a></dt>
+  <dd>Short alias for <code class="Cm">send</code>.</dd>
   <dt id="cherrypick"><a class="permalink" href="#cherrypick"><code class="Cm">cherrypick</code></a>
     <var class="Ar">commit</var></dt>
   <dd>Merge changes from a single <var class="Ar">commit</var> into the work
@@ -1484,7 +1619,7 @@
     <p class="Pp">The options for <code class="Cm">got rebase</code> are as
         follows:</p>
     <dl class="Bl-tag">
-      <dt id="a~4"><a class="permalink" href="#a~4"><code class="Fl">-a</code></a></dt>
+      <dt id="a~5"><a class="permalink" href="#a~5"><code class="Fl">-a</code></a></dt>
       <dd>Abort an interrupted rebase operation. If this option is used, no
           other command-line arguments are allowed.</dd>
       <dt id="c~9"><a class="permalink" href="#c~9"><code class="Fl">-c</code></a></dt>
@@ -1666,13 +1801,13 @@
     <p class="Pp">The options for <code class="Cm">got histedit</code> are as
         follows:</p>
     <dl class="Bl-tag">
-      <dt id="a~5"><a class="permalink" href="#a~5"><code class="Fl">-a</code></a></dt>
+      <dt id="a~6"><a class="permalink" href="#a~6"><code class="Fl">-a</code></a></dt>
       <dd>Abort an interrupted histedit operation. If this option is used, no
           other command-line arguments are allowed.</dd>
       <dt id="c~10"><a class="permalink" href="#c~10"><code class="Fl">-c</code></a></dt>
       <dd>Continue an interrupted histedit operation. If this option is used, no
           other command-line arguments are allowed.</dd>
-      <dt id="f~2"><a class="permalink" href="#f~2"><code class="Fl">-f</code></a></dt>
+      <dt id="f~3"><a class="permalink" href="#f~3"><code class="Fl">-f</code></a></dt>
       <dd>Fold all commits into a single commit. This option is a quick
           equivalent to a histedit script which folds all commits, combining
           them all into one commit. The <code class="Fl">-f</code> option can
@@ -1955,7 +2090,7 @@
           hash or an existing reference or tag name which will be resolved to a
           commit ID. An abbreviated hash argument will be expanded to a full
           SHA1 hash automatically, provided the abbreviation is unique.</dd>
-      <dt id="r~10"><a class="permalink" href="#r~10"><code class="Fl">-r</code></a>
+      <dt id="r~11"><a class="permalink" href="#r~11"><code class="Fl">-r</code></a>
         <var class="Ar">repository-path</var></dt>
       <dd>Use the repository at the specified path. If not specified, assume the
           repository is located at or above the current working directory. If
@@ -1993,12 +2128,12 @@
       email address in author data, <code class="Nm">got</code> attempts to
       reject <code class="Ev">GOT_AUTHOR</code> environment variables with a
       missing email address.
-    <p class="Pp"><code class="Ev">GOT_AUTHOR will be overriden by configuration
-        settings in</code> <a class="Xr">got.conf(5)</a> or by Git's
+    <p class="Pp"><code class="Ev">GOT_AUTHOR will be overridden by
+        configuration settings in</code> <a class="Xr">got.conf(5)</a> or by
+        Git's <code class="Dv">user.name</code> and
+        <code class="Dv">user.email</code> configuration settings in the
+        repository's <span class="Pa">.git/config</span> file. The
         <code class="Dv">user.name</code> and <code class="Dv">user.email</code>
-        configuration settings in the repository's
-        <span class="Pa">.git/config</span> file. The
-        <code class="Dv">user.name</code> and <code class="Dv">user.email</code>
         configuration settings contained in Git's global
         <span class="Pa">~/.gitconfig</span> configuration file will only be
         used if neither <a class="Xr">got.conf(5)</a> nor the
@@ -2045,6 +2180,11 @@
 </section>
 <section class="Sh">
 <h1 class="Sh" id="EXAMPLES"><a class="permalink" href="#EXAMPLES">EXAMPLES</a></h1>
+<p class="Pp">Enable tab-completion of <code class="Nm">got</code> command names
+    in <a class="Xr">ksh(1)</a>:</p>
+<p class="Pp"></p>
+<div class="Bd Bd-indent"><code class="Li">$ set -A complete_got -- $(got -h
+  2&gt;&amp;1 | sed -n s/commands://p)</code></div>
 <p class="Pp">Clone an existing Git repository for use with
     <code class="Nm">got</code>.</p>
 <p class="Pp"></p>
@@ -2165,7 +2305,8 @@
   :-)</code></div>
 <div class="Bd Bd-indent"><code class="Li">$ got backout
   unified-buffer-cache</code></div>
-<p class="Pp">Fetch new upstream commits into the local repository's
+<p class="Pp">Fetch new changes on the remote repository's
+    &#x201C;master&#x201D; branch, making them visible on the local repository's
     &#x201C;origin/master&#x201D; branch:</p>
 <p class="Pp"></p>
 <div class="Bd Bd-indent"><code class="Li">$ cd /usr/src</code></div>
@@ -2204,30 +2345,9 @@
   unified-buffer-cache</code></div>
 <div class="Bd Bd-indent"><code class="Li">$ got update -c master</code></div>
 <div class="Bd Bd-indent"><code class="Li">$ got histedit</code></div>
-<p class="Pp">In order to merge changes committed to the
-    &#x201C;unified-buffer-cache&#x201D; branch back into the
-    &#x201C;master&#x201D; branch, the &#x201C;unified-buffer-cache&#x201D;
-    branch must first be rebased onto the &#x201C;master&#x201D; branch:</p>
-<p class="Pp"></p>
-<div class="Bd Bd-indent"><code class="Li">$ got update -b master</code></div>
-<div class="Bd Bd-indent"><code class="Li">$ got rebase
-  unified-buffer-cache</code></div>
-<p class="Pp">Changes on the &#x201C;unified-buffer-cache&#x201D; branch can now
-    be made visible on the &#x201C;master&#x201D; branch with
-    <code class="Cm">got integrate</code>. Because the rebase operation switched
-    the work tree to the &#x201C;unified-buffer-cache&#x201D; branch, the work
-    tree must be switched back to the &#x201C;master&#x201D; branch before the
-    &#x201C;unified-buffer-cache&#x201D; branch can be integrated into
-    &#x201C;master&#x201D;:</p>
-<p class="Pp"></p>
-<div class="Bd Bd-indent"><code class="Li">$ got update -b master</code></div>
-<div class="Bd Bd-indent"><code class="Li">$ got integrate
-  unified-buffer-cache</code></div>
-<p class="Pp">Additional steps may be necessary if local changes need to be
-    pushed back to the remote repository, which currently requires
-    <code class="Cm">git push</code>. Before working against existing branches
-    in a repository cloned with <code class="Cm">git clone --bare</code> instead
-    of <code class="Cm">got clone</code>, a Git &#x201C;refspec&#x201D; must be
+<p class="Pp">Before working against existing branches in a repository cloned
+    with <code class="Cm">git clone --bare</code> instead of
+    <code class="Cm">got clone</code>, a Git &#x201C;refspec&#x201D; must be
     configured to map all references in the remote repository into the
     &#x201C;refs/remotes&#x201D; namespace of the local repository. This can be
     achieved by setting Git's <span class="Pa">remote.origin.fetch</span>
@@ -2257,22 +2377,47 @@
 <p class="Pp">This configuration leaves the local repository's
     &#x201C;refs/heads&#x201D; namespace free for use by local branches checked
     out with <code class="Cm">got checkout</code> and, if needed, created with
-    <code class="Cm">got branch</code>.</p>
-<p class="Pp">Branches in the &#x201C;remotes/origin&#x201D; namespace can now
-    be updated with incoming changes from the remote repository with
-    <code class="Cm">got fetch</code> or <a class="Xr">git-fetch(1)</a> without
-    extra command line arguments:</p>
+    <code class="Cm">got branch</code>. Branches in the
+    &#x201C;refs/remotes/origin&#x201D; namespace can now be updated with
+    incoming changes from the remote repository with <code class="Cm">got
+    fetch</code> or <a class="Xr">git-fetch(1)</a> without extra command line
+    arguments. Newly fetched changes can be examined with <code class="Cm">got
+    log</code>.</p>
+<p class="Pp">Display changes on the remote repository's version of the
+    &#x201C;master&#x201D; branch, as of the last time <code class="Cm">got
+    fetch</code> was run:</p>
 <p class="Pp"></p>
-<div class="Bd Bd-indent"><code class="Li">$ cd /var/git/repo</code></div>
-<div class="Bd Bd-indent"><code class="Li">$ git fetch</code></div>
-<p class="Pp">To make changes fetched from the remote repository appear on the
-    &#x201C;master&#x201D; branch, the &#x201C;master&#x201D; branch must be
-    rebased onto the &#x201C;origin/master&#x201D; branch. This will also merge
-    local changes, if any, with the incoming changes:</p>
+<div class="Bd Bd-indent"><code class="Li">$ got log -c origin/master |
+  less</code></div>
+<p class="Pp">As shown here, most commands accept abbreviated reference names
+    such as &#x201C;origin/master&#x201D; instead of
+    &#x201C;refs/remotes/origin/master&#x201D;. The latter is only needed in
+    case of ambiguity.</p>
+<p class="Pp"><code class="Cm">got rebase</code> must be used to merge changes
+    which are visible on the &#x201C;origin/master&#x201D; branch into the
+    &#x201C;master&#x201D; branch. This will also merge local changes, if any,
+    with the incoming changes:</p>
 <p class="Pp"></p>
 <div class="Bd Bd-indent"><code class="Li">$ got update -b
   origin/master</code></div>
 <div class="Bd Bd-indent"><code class="Li">$ got rebase master</code></div>
+<p class="Pp">In order to make changes committed to the
+    &#x201C;unified-buffer-cache&#x201D; visible on the &#x201C;master&#x201D;
+    branch, the &#x201C;unified-buffer-cache&#x201D; branch must first be
+    rebased onto the &#x201C;master&#x201D; branch:</p>
+<p class="Pp"></p>
+<div class="Bd Bd-indent"><code class="Li">$ got update -b master</code></div>
+<div class="Bd Bd-indent"><code class="Li">$ got rebase
+  unified-buffer-cache</code></div>
+<p class="Pp">Changes on the &#x201C;unified-buffer-cache&#x201D; branch can now
+    be made visible on the &#x201C;master&#x201D; branch with
+    <code class="Cm">got integrate</code>. Because the rebase operation switched
+    the work tree to the &#x201C;unified-buffer-cache&#x201D; branch the work
+    tree must be switched back to the &#x201C;master&#x201D; branch first:</p>
+<p class="Pp"></p>
+<div class="Bd Bd-indent"><code class="Li">$ got update -b master</code></div>
+<div class="Bd Bd-indent"><code class="Li">$ got integrate
+  unified-buffer-cache</code></div>
 <p class="Pp">On the &#x201C;master&#x201D; branch, log messages for local
     changes can now be amended with &#x201C;OK&#x201D; by other developers and
     any other important new information:</p>
@@ -2280,10 +2425,19 @@
 <div class="Bd Bd-indent"><code class="Li">$ got update -c
   origin/master</code></div>
 <div class="Bd Bd-indent"><code class="Li">$ got histedit -m</code></div>
-<p class="Pp">Local changes on the &#x201C;master&#x201D; branch can then be
-    pushed to the remote repository with <code class="Cm">git push</code>:</p>
+<p class="Pp">If the remote repository offers write access local changes on the
+    &#x201C;master&#x201D; branch can be sent to the remote repository with
+    <code class="Cm">got send.</code> Usually, <code class="Cm">got send</code>
+    can be run without further arguments. The arguments shown here match
+    defaults, provided the work tree's current branch is the
+    &#x201C;master&#x201D; branch:</p>
 <p class="Pp"></p>
-<div class="Bd Bd-indent"><code class="Li">$ cd /var/git/repo</code></div>
+<div class="Bd Bd-indent"><code class="Li">$ got send -b master
+  origin</code></div>
+<p class="Pp">If the remote repository requires the HTTPS protocol the
+    <a class="Xr">git-push(1)</a> command must be used instead:</p>
+<p class="Pp"></p>
+<div class="Bd Bd-indent"><code class="Li">$ cd /var/git/src.git</code></div>
 <div class="Bd Bd-indent"><code class="Li">$ git push origin master</code></div>
 </section>
 <section class="Sh">
@@ -2316,7 +2470,7 @@
 <ul class="Bl-bullet">
   <li>Reading from remote repositories over HTTP or HTTPS protocols requires
       <a class="Xr">git-clone(1)</a> and <a class="Xr">git-fetch(1)</a>.</li>
-  <li>Writing to remote repositories, over any protocol, requires
+  <li>Writing to remote repositories over HTTP or HTTPS protocols requires
       <a class="Xr">git-push(1)</a>.</li>
   <li>The creation of merge commits, i.e. commits with two or more parent
       commits, requires <a class="Xr">git-merge(1)</a>.</li>
@@ -2329,8 +2483,8 @@
 </div>
 <table class="foot">
   <tr>
-    <td class="foot-date">July 26, 2021</td>
-    <td class="foot-os">OpenBSD 6.9</td>
+    <td class="foot-date">August 31, 2021</td>
+    <td class="foot-os">OpenBSD 7.0</td>
   </tr>
 </table>
 </body>
blob - cfb12a5769afa1275f9ee0baf2367881df6cddf6
blob + c24d5f778d09e76339ea8d7b56c49ab17bb16ebd
--- gotadmin.1.html
+++ gotadmin.1.html
@@ -181,9 +181,9 @@
   <dt id="ls"><a class="permalink" href="#ls"><code class="Cm">ls</code></a></dt>
   <dd>Short alias for <code class="Cm">listpack</code>.</dd>
   <dt id="cleanup"><a class="permalink" href="#cleanup"><code class="Cm">cleanup</code></a>
-    [<code class="Fl">-p</code>] [<code class="Fl">-n</code>]
-    [<code class="Fl">-r</code> <var class="Ar">repository-path</var>]
-    [<code class="Fl">-q</code>]</dt>
+    [<code class="Fl">-a</code>] [<code class="Fl">-p</code>]
+    [<code class="Fl">-n</code>] [<code class="Fl">-r</code>
+    <var class="Ar">repository-path</var>] [<code class="Fl">-q</code>]</dt>
   <dd>Purge unreferenced loose objects from the repository and display the
       amount of disk space which has been freed as a result.
     <p class="Pp">Unreferenced objects are present in the repository but cannot
@@ -232,6 +232,12 @@
     <p class="Pp">The options for <code class="Cm">gotadmin cleanup</code> are
         as follows:</p>
     <dl class="Bl-tag">
+      <dt id="a~2"><a class="permalink" href="#a~2"><code class="Fl">-a</code></a></dt>
+      <dd>Delete all loose objects. By default, objects which are newer than an
+          implementation-defined modification timestamp are kept on disk to
+          prevent race conditions with other commands that add new objects to
+          the repository while <code class="Cm">gotadmin cleanup</code> is
+          running.</dd>
       <dt id="p"><a class="permalink" href="#p"><code class="Fl">-p</code></a></dt>
       <dd>Instead of purging unreferenced loose objects, remove any pack index
           files which do not have a corresponding pack file.</dd>
@@ -297,8 +303,8 @@
 </div>
 <table class="foot">
   <tr>
-    <td class="foot-date">July 26, 2021</td>
-    <td class="foot-os">OpenBSD 6.9</td>
+    <td class="foot-date">August 31, 2021</td>
+    <td class="foot-os">OpenBSD 7.0</td>
   </tr>
 </table>
 </body>
blob - 011f90f4a88440f68a85d0f2428b898b0ebdef3d
blob + 27300db94ed9414c413489e57d5952e963c1a275
--- gotweb.8.html
+++ gotweb.8.html
@@ -155,8 +155,8 @@
 </div>
 <table class="foot">
   <tr>
-    <td class="foot-date">July 26, 2021</td>
-    <td class="foot-os">OpenBSD 6.9</td>
+    <td class="foot-date">August 31, 2021</td>
+    <td class="foot-os">OpenBSD 7.0</td>
   </tr>
 </table>
 </body>
blob - 50baea2dddb65793188e253e507b1ba17c7a4079
blob + c5b94de96924a4d54f77897fda23f1d816135761
--- gotweb.conf.5.html
+++ gotweb.conf.5.html
@@ -171,8 +171,8 @@ got_logo_url			&quot;https://gameoftrees.org&quot;
 </div>
 <table class="foot">
   <tr>
-    <td class="foot-date">July 26, 2021</td>
-    <td class="foot-os">OpenBSD 6.9</td>
+    <td class="foot-date">August 31, 2021</td>
+    <td class="foot-os">OpenBSD 7.0</td>
   </tr>
 </table>
 </body>
blob - c3ef08b221c1861f7e0bdd3c95cf3d9ef2a7f707
blob + 2a8f8cac86ea79acd8b24ac2a9d8b6d604a9fd53
--- tog.1.html
+++ tog.1.html
@@ -136,6 +136,15 @@
       <dt id="Page-up,"><a class="permalink" href="#Page-up,"><code class="Cm">Page-up,
         Ctrl+b</code></a></dt>
       <dd>Move the selection cursor up one page.</dd>
+      <dt id="Home,"><a class="permalink" href="#Home,"><code class="Cm">Home,
+        g</code></a></dt>
+      <dd>Move the cursor to the newest commit.</dd>
+      <dt id="End,"><a class="permalink" href="#End,"><code class="Cm">End,
+        G</code></a></dt>
+      <dd>Move the cursor to the oldest commit. This will traverse all commits
+          on the current branch which may take a long time depending on the
+          number of commits in branch history. If needed this operation can be
+          cancelled with <code class="Cm">Backspace</code>.</dd>
       <dt id="Enter,"><a class="permalink" href="#Enter,"><code class="Cm">Enter,
         Space</code></a></dt>
       <dd>Open a <code class="Cm">diff</code> view showing file changes made in
@@ -145,8 +154,9 @@
           currently selected commit.</dd>
       <dt id="Backspace"><a class="permalink" href="#Backspace"><code class="Cm">Backspace</code></a></dt>
       <dd>Show log entries for the parent directory of the currently selected
-          path, unless an active search is in progress in which case
-          <code class="Cm">Backspace</code> aborts the search.</dd>
+          path. However when an active search is in progress or when additional
+          commits are loaded, <code class="Cm">Backspace</code> aborts the
+          running operation.</dd>
       <dt id="/"><a class="permalink" href="#/"><code class="Cm">/</code></a></dt>
       <dd>Prompt for a search pattern and start searching for matching commits.
           The search pattern is an extended regular expression which is matched
@@ -228,6 +238,12 @@
       <dt id="Page-up,~2"><a class="permalink" href="#Page-up,~2"><code class="Cm">Page-up,
         Ctrl+b</code></a></dt>
       <dd>Scroll up one page.</dd>
+      <dt id="Home,~2"><a class="permalink" href="#Home,~2"><code class="Cm">Home,
+        g</code></a></dt>
+      <dd>Scroll to the top of the view.</dd>
+      <dt id="End,~2"><a class="permalink" href="#End,~2"><code class="Cm">End,
+        G</code></a></dt>
+      <dd>Scroll to the bottom of the view.</dd>
       <dt id="_"><a class="permalink" href="#_"><code class="Cm">[</code></a></dt>
       <dd>Reduce the amount of diff context lines.</dd>
       <dt id="_~2"><a class="permalink" href="#_~2"><code class="Cm">]</code></a></dt>
@@ -489,7 +505,7 @@
       the environment variables documented below. The colors available in color
       schemes are &#x201C;black&#x201D;, &#x201C;red&#x201D;,
       &#x201C;green&#x201D;, &#x201C;yellow&#x201D;, &#x201C;blue&#x201D;,
-      &#x201C;megenta&#x201D;, &#x201C;cyan&#x201D;, and &#x201C;default&#x201D;
+      &#x201C;magenta&#x201D;, &#x201C;cyan&#x201D;, and &#x201C;default&#x201D;
       which maps to the terminal's default foreground color.</dd>
   <dt id="TOG_COLOR_DIFF_MINUS"><a class="permalink" href="#TOG_COLOR_DIFF_MINUS"><code class="Ev">TOG_COLOR_DIFF_MINUS</code></a></dt>
   <dd>The color used to mark up removed lines in diffs. If not set, the default
@@ -504,7 +520,7 @@
   <dd>The color used to mark up meta data in diffs. If not set, the default
       value &#x201C;green&#x201D; is used.</dd>
   <dt id="TOG_COLOR_TREE_SUBMODULE"><a class="permalink" href="#TOG_COLOR_TREE_SUBMODULE"><code class="Ev">TOG_COLOR_TREE_SUBMODULE</code></a></dt>
-  <dd>The color used to mark up sobmodules tree entries. If not set, the default
+  <dd>The color used to mark up submodule tree entries. If not set, the default
       value &#x201C;magenta&#x201D; is used.</dd>
   <dt id="TOG_COLOR_TREE_SYMLINK"><a class="permalink" href="#TOG_COLOR_TREE_SYMLINK"><code class="Ev">TOG_COLOR_TREE_SYMLINK</code></a></dt>
   <dd>The color used to mark up symbolic link tree entries. If not set, the
@@ -561,8 +577,8 @@
 </div>
 <table class="foot">
   <tr>
-    <td class="foot-date">July 26, 2021</td>
-    <td class="foot-os">OpenBSD 6.9</td>
+    <td class="foot-date">August 31, 2021</td>
+    <td class="foot-os">OpenBSD 7.0</td>
   </tr>
 </table>
 </body>