commit - 7945ca33f91319207b2f0bddfcb5f206ec1bc14b
commit + 1a21a6dd6de115f2de954e005a5ceef57dbfc943
blob - /dev/null
blob + bee95739eff634d4a5afa0f356db30c6d3f314cb (mode 644)
--- /dev/null
+++ got.conf.5.html
+<!DOCTYPE html>
+<html>
+<!-- This is an automatically generated file. Do not edit.
+ Copyright (c) 2020 Stefan Sperling <stsp@openbsd.org>
+
+ Permission to use, copy, modify, and distribute this software for any
+ purpose with or without fee is hereby granted, provided that the above
+ copyright notice and this permission notice appear in all copies.
+
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ -->
+<head>
+ <meta charset="utf-8"/>
+ <meta name="viewport" content="width=device-width, initial-scale=1.0"/>
+ <style>
+ table.head, table.foot { width: 100%; }
+ td.head-rtitle, td.foot-os { text-align: right; }
+ td.head-vol { text-align: center; }
+ .Nd, .Bf, .Op { display: inline; }
+ .Pa, .Ad { font-style: italic; }
+ .Ms { font-weight: bold; }
+ .Bl-diag > dt { font-weight: bold; }
+ code.Nm, .Fl, .Cm, .Ic, code.In, .Fd, .Fn, .Cd { font-weight: bold;
+ font-family: inherit; }
+ </style>
+ <title>GOT.CONF(5)</title>
+</head>
+<body>
+<table class="head">
+ <tr>
+ <td class="head-ltitle">GOT.CONF(5)</td>
+ <td class="head-vol">File Formats Manual</td>
+ <td class="head-rtitle">GOT.CONF(5)</td>
+ </tr>
+</table>
+<div class="manual-text">
+<section class="Sh">
+<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
+<p class="Pp"><code class="Nm">got.conf</code> — <span class="Nd">Game of
+ Trees configuration file</span></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
+<p class="Pp"><code class="Nm">got.conf</code> is the run-time configuration
+ file for <a class="Xr">got(1)</a>.</p>
+<p class="Pp"><code class="Nm">got.conf</code> may be present in the root
+ directory of a Git repository for repository-wide settings, or in the
+ <span class="Pa">.got</span> meta-data directory of a work tree to override
+ repository-wide settings for <a class="Xr">got(1)</a> commands executed
+ within this work tree.</p>
+<p class="Pp">The file format is line-based, with one configuration directive
+ per line. Any lines beginning with a ‘#’ are treated as
+ comments and ignored.</p>
+<p class="Pp">The available configuration directives are as follows:</p>
+<dl class="Bl-tag">
+ <dt id="author"><a class="permalink" href="#author"><code class="Ic">author</code></a>
+ “Real Name <email address>”</dt>
+ <dd>Configure the author's name and email address for <code class="Cm">got
+ commit</code> and <code class="Cm">got import</code> when operating on
+ this repository. Author information specified here overrides the
+ <code class="Ev">GOT_AUTHOR</code> environment variable.
+ <p class="Pp">Because <a class="Xr">git(1)</a> may fail to parse commits
+ without an email address in author data, <a class="Xr">got(1)</a>
+ attempts to reject author information with a missing email address.</p>
+ </dd>
+ <dt id="remote"><a class="permalink" href="#remote"><code class="Ic">remote</code></a>
+ <var class="Ar">name</var> {...}</dt>
+ <dd>Define a remote repository. The specified <var class="Ar">name</var> can
+ be used to refer to the remote repository on the command line of
+ <code class="Cm">got fetch</code> and <code class="Cm">got send</code>.
+ <p class="Pp">Information about this repository is declared in a block of
+ options enclosed in curly brackets:</p>
+ <dl class="Bl-tag">
+ <dt id="server"><a class="permalink" href="#server"><code class="Ic">server</code></a>
+ <var class="Ar">hostname</var></dt>
+ <dd>Defines the hostname to use for contacting the remote repository's
+ server.</dd>
+ <dt id="repository"><a class="permalink" href="#repository"><code class="Ic">repository</code></a>
+ <var class="Ar">path</var></dt>
+ <dd>Defines the path to the repository on the remote repository's
+ server.</dd>
+ <dt id="protocol"><a class="permalink" href="#protocol"><code class="Ic">protocol</code></a>
+ <var class="Ar">scheme</var></dt>
+ <dd>Defines the protocol to use for communicating with the remote
+ repository's server.
+ <p class="Pp">The following protocol schemes are supported:</p>
+ <dl class="Bl-tag">
+ <dt>git</dt>
+ <dd>The Git protocol as implemented by the
+ <a class="Xr">git-daemon(1)</a> server. Use of this protocol is
+ discouraged since it supports neither authentication nor
+ encryption.</dd>
+ <dt>git+ssh</dt>
+ <dd>The Git protocol wrapped in an authenticated and encrypted
+ <a class="Xr">ssh(1)</a> tunnel. With this protocol the hostname
+ may contain an embedded username for <a class="Xr">ssh(1)</a> to
+ use:
+ <a class="Mt" href="mailto:user@hostname">user@hostname</a></dd>
+ <dt>ssh</dt>
+ <dd>Short alias for git+ssh.</dd>
+ </dl>
+ </dd>
+ <dt id="port"><a class="permalink" href="#port"><code class="Ic">port</code></a>
+ <var class="Ar">port</var></dt>
+ <dd>Defines the port to use for connecting to the remote repository's
+ server. The <var class="Ar">port</var> can be specified by number or
+ name. The port name to number mappings are found in the file
+ <span class="Pa">/etc/services</span>; see
+ <a class="Xr">services(5)</a> for details. If not specified, the
+ default port of the specified <code class="Cm">protocol</code> will be
+ used.</dd>
+ <dt id="branch"><a class="permalink" href="#branch"><code class="Ic">branch</code></a>
+ {<var class="Ar">branch ...</var>}</dt>
+ <dd>Specify one or more branches which <code class="Cm">got fetch</code>
+ and <code class="Cm">got send</code> should fetch from and send to the
+ remote repository by default. The list of branches specified here can
+ be overridden at the <code class="Cm">got fetch</code> and
+ <code class="Cm">got send</code> command lines with the
+ <code class="Fl">-b</code> option.</dd>
+ <dt id="fetch-all-branches"><a class="permalink" href="#fetch-all-branches"><code class="Ic">fetch-all-branches</code></a>
+ <var class="Ar">yes</var> | <var class="Ar">no</var></dt>
+ <dd>This option controls whether <code class="Cm">got fetch</code> will
+ fetch all branches from the remote repository by default. If enabled,
+ this behaviour can be overridden at the <code class="Cm">got
+ fetch</code> command line with the <code class="Fl">-b</code> option,
+ and any <code class="Cm">branch</code> configuration settings for this
+ remote repository will be ignored.</dd>
+ <dt id="reference"><a class="permalink" href="#reference"><code class="Ic">reference</code></a>
+ {<var class="Ar">reference ...</var>}</dt>
+ <dd>Specify one or more arbitrary references which <code class="Cm">got
+ fetch</code> should fetch by default, in addition to the branches and
+ tags that will be fetched. The list of references specified here can
+ be overridden at the <code class="Cm">got fetch</code> command line
+ with the <code class="Fl">-R</code> option. <code class="Cm">got
+ fetch</code> will refuse to fetch references from the remote
+ repository's “refs/remotes/” or
+ “refs/got/” namespace. In any case, references in the
+ “refs/tags/” namespace will always be fetched and mapped
+ directly to local references in the same namespace.</dd>
+ <dt id="mirror-references"><a class="permalink" href="#mirror-references"><code class="Ic">mirror-references</code></a>
+ <var class="Ar">yes</var> | <var class="Ar">no</var></dt>
+ <dd>This option controls the behaviour of <code class="Cm">got
+ fetch</code> when updating references.
+ <a class="permalink" href="#Enabling"><b class="Sy" id="Enabling">Enabling
+ this option can lead to the loss of local commits.</b></a> Maintaining
+ custom changes in a mirror repository is therefore discouraged.
+ <p class="Pp">If this option is not specified or set to
+ <var class="Ar">no</var>, <code class="Cm">got fetch</code> will map
+ references of the remote repository into the local repository's
+ “refs/remotes/” namespace.</p>
+ <p class="Pp">If this option is set to <var class="Ar">yes</var>, all
+ branches in the “refs/heads/” namespace will be
+ updated directly to match the corresponding branches in the remote
+ repository.</p>
+ </dd>
+ <dt id="fetch"><a class="permalink" href="#fetch"><code class="Ic">fetch</code></a>
+ {...}</dt>
+ <dd>An optional <code class="Ic">fetch</code> block may contain any of the
+ following configuration settings for use by <code class="Cm">got
+ fetch</code>, overriding corresponding settings in the containing
+ <code class="Ic">remote</code> <var class="Ar">name</var> {...} block.
+ <ul class="Bl-bullet">
+ <li id="server~2"><a class="permalink" href="#server~2"><code class="Ic">server</code></a>
+ <var class="Ar">hostname</var></li>
+ <li id="repository~2"><a class="permalink" href="#repository~2"><code class="Ic">repository</code></a>
+ <var class="Ar">path</var></li>
+ <li id="protocol~2"><a class="permalink" href="#protocol~2"><code class="Ic">protocol</code></a>
+ <var class="Ar">path</var></li>
+ <li id="port~2"><a class="permalink" href="#port~2"><code class="Ic">port</code></a>
+ <var class="Ar">port</var></li>
+ <li id="branch~2"><a class="permalink" href="#branch~2"><code class="Ic">branch</code></a>
+ {<var class="Ar">branch ...</var>}</li>
+ </ul>
+ </dd>
+ <dt id="send"><a class="permalink" href="#send"><code class="Ic">send</code></a>
+ {...}</dt>
+ <dd>An optional <code class="Ic">send</code> block may contain any of the
+ following configuration settings for use by <code class="Cm">got
+ send</code>, overriding corresponding settings in the containing
+ <code class="Ic">remote</code> <var class="Ar">name</var> {...} block.
+ <ul class="Bl-bullet">
+ <li id="server~3"><a class="permalink" href="#server~3"><code class="Ic">server</code></a>
+ <var class="Ar">hostname</var></li>
+ <li id="repository~3"><a class="permalink" href="#repository~3"><code class="Ic">repository</code></a>
+ <var class="Ar">path</var></li>
+ <li id="protocol~3"><a class="permalink" href="#protocol~3"><code class="Ic">protocol</code></a>
+ <var class="Ar">path</var></li>
+ <li id="port~3"><a class="permalink" href="#port~3"><code class="Ic">port</code></a>
+ <var class="Ar">port</var></li>
+ <li id="branch~3"><a class="permalink" href="#branch~3"><code class="Ic">branch</code></a>
+ {<var class="Ar">branch ...</var>}</li>
+ </ul>
+ </dd>
+ </dl>
+ </dd>
+</dl>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="EXAMPLES"><a class="permalink" href="#EXAMPLES">EXAMPLES</a></h1>
+<p class="Pp">Configure author information:</p>
+<div class="Bd Pp Bd-indent Li">
+<pre>author "Flan Hacker <flan_hacker@openbsd.org>"</pre>
+</div>
+<p class="Pp">Remote repository specification for the Game of Trees
+ repository:</p>
+<div class="Bd Pp Bd-indent Li">
+<pre>remote "origin" {
+ server git.gameoftrees.org
+ protocol git
+ repository got
+ branch { "main" }
+}</pre>
+</div>
+<p class="Pp">Mirror the <span class="Ux">OpenBSD</span> src repository from
+ Github:</p>
+<div class="Bd Pp Bd-indent Li">
+<pre>remote "origin" {
+ repository "openbsd/src"
+ server git@github.com
+ protocol git+ssh
+ mirror-references yes
+}</pre>
+</div>
+<p class="Pp">Fetch changes via the Git protocol and send changes via the SSH
+ protocol:</p>
+<div class="Bd Pp Bd-indent Li">
+<pre>remote "origin" {
+ repository my_repo
+ server git.example.com
+ protocol git
+ send {
+ server git@git.example.com
+ protocol ssh
+ }
+}</pre>
+</div>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="FILES"><a class="permalink" href="#FILES">FILES</a></h1>
+<dl class="Bl-tag Bl-compact">
+ <dt><span class="Pa">got.conf</span></dt>
+ <dd>If present, <code class="Nm">got.conf</code> located in the root directory
+ of a Git repository supersedes any relevant settings in Git's
+ <span class="Pa">config</span> file.
+ <p class="Pp"></p>
+ </dd>
+ <dt><span class="Pa">.got/got.conf</span></dt>
+ <dd>If present, <code class="Nm">got.conf</code> located in the
+ <span class="Pa">.got</span> meta-data directory of a
+ <a class="Xr">got(1)</a> work tree supersedes any relevant settings in the
+ repository's <code class="Nm">got.conf</code> configuration file and Git's
+ <span class="Pa">config</span> file.</dd>
+</dl>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
+ ALSO</a></h1>
+<p class="Pp"><a class="Xr">got(1)</a>, <a class="Xr">git-repository(5)</a>,
+ <a class="Xr">got-worktree(5)</a></p>
+</section>
+<section class="Sh">
+<h1 class="Sh" id="CAVEATS"><a class="permalink" href="#CAVEATS">CAVEATS</a></h1>
+<p class="Pp"><code class="Nm">got.conf</code> offers no way to configure the
+ editor spawned by <code class="Cm">got commit</code>, <code class="Cm">got
+ histedit</code>, <code class="Cm">got import</code>, or <code class="Cm">got
+ tag</code>. This is deliberate and prevents potential arbitrary command
+ execution as another user when repositories or work trees are shared between
+ users. Users should set their <code class="Ev">VISUAL</code> or
+ <code class="Ev">EDITOR</code> environment variables instead.</p>
+</section>
+</div>
+<table class="foot">
+ <tr>
+ <td class="foot-date">September 12, 2021</td>
+ <td class="foot-os">OpenBSD 7.0</td>
+ </tr>
+</table>
+</body>
+</html>
blob - 1b0b3bb94870df57945da272454653d63f4f1e75
blob + 2324f8a5f5cb036b699fb0ece288febfc6dd11b1
--- manual.html
+++ manual.html
<li><a href="got.1.html">got</a> — Game of Trees
<li><a href="gotadmin.1.html">gotadmin</a> — Game of Trees repository administration
<li><a href="tog.1.html">tog</a> — Git repository browser
+<li><a href="got.conf.5.html">got.conf</a> — Game of Trees configuration file
<li><a href="got-worktree.5.html">got-worktree</a> — Got work tree format
<li><a href="git-repository.5.html">git-repository</a> — Git repository format
</ul>
blob - 9736b245e1734f4b365fe2426b8119babcbeafed
blob + d863c1e11126f6c78471c762b797a1000a8e8035
--- sync-man.sh
+++ sync-man.sh
#!/bin/sh
-for f in got.1 got-worktree.5 git-repository.5; do
+for f in got.1 got-worktree.5 git-repository.5 got.conf.5; do
mandoc -T html $HOME/src/got/got/$f > ./${f}.html
done
mandoc -T html $HOME/src/got/gotadmin/gotadmin.1 > ./gotadmin.1.html