Blame


1 257add31 2020-09-09 stsp .\"
2 257add31 2020-09-09 stsp .\" Copyright (c) 2020 Stefan Sperling <stsp@openbsd.org>
3 257add31 2020-09-09 stsp .\"
4 257add31 2020-09-09 stsp .\" Permission to use, copy, modify, and distribute this software for any
5 257add31 2020-09-09 stsp .\" purpose with or without fee is hereby granted, provided that the above
6 257add31 2020-09-09 stsp .\" copyright notice and this permission notice appear in all copies.
7 257add31 2020-09-09 stsp .\"
8 257add31 2020-09-09 stsp .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 257add31 2020-09-09 stsp .\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 257add31 2020-09-09 stsp .\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 257add31 2020-09-09 stsp .\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 257add31 2020-09-09 stsp .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13 257add31 2020-09-09 stsp .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14 257add31 2020-09-09 stsp .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15 257add31 2020-09-09 stsp .\"
16 257add31 2020-09-09 stsp .Dd $Mdocdate$
17 257add31 2020-09-09 stsp .Dt GOT.CONF 5
18 257add31 2020-09-09 stsp .Os
19 257add31 2020-09-09 stsp .Sh NAME
20 257add31 2020-09-09 stsp .Nm got.conf
21 257add31 2020-09-09 stsp .Nd Game of Trees configuration file
22 257add31 2020-09-09 stsp .Sh DESCRIPTION
23 257add31 2020-09-09 stsp .Nm
24 257add31 2020-09-09 stsp is the run-time configuration file for
25 257add31 2020-09-09 stsp .Xr got 1 .
26 257add31 2020-09-09 stsp .Pp
27 50b0790e 2020-09-11 stsp .Nm
28 50b0790e 2020-09-11 stsp may be present in the root directory of a Git repository for
29 50b0790e 2020-09-11 stsp repository-wide settings, or in the
30 50b0790e 2020-09-11 stsp .Pa .got
31 50b0790e 2020-09-11 stsp meta-data directory of a work tree to override repository-wide
32 50b0790e 2020-09-11 stsp settings for
33 50b0790e 2020-09-11 stsp .Xr got 1
34 50b0790e 2020-09-11 stsp commands executed within this work tree.
35 50b0790e 2020-09-11 stsp .Pp
36 257add31 2020-09-09 stsp The file format is line-based, with one configuration directive per line.
37 257add31 2020-09-09 stsp Any lines beginning with a
38 257add31 2020-09-09 stsp .Sq #
39 257add31 2020-09-09 stsp are treated as comments and ignored.
40 257add31 2020-09-09 stsp .Pp
41 257add31 2020-09-09 stsp The available configuration directives are as follows:
42 257add31 2020-09-09 stsp .Bl -tag -width Ds
43 257add31 2020-09-09 stsp .It Ic author Dq Real Name <email address>
44 257add31 2020-09-09 stsp Configure the author's name and email address for
45 257add31 2020-09-09 stsp .Cm got commit
46 257add31 2020-09-09 stsp and
47 257add31 2020-09-09 stsp .Cm got import
48 257add31 2020-09-09 stsp when operating on this repository.
49 257add31 2020-09-09 stsp Author information specified here overrides the
50 257add31 2020-09-09 stsp .Ev GOT_AUTHOR
51 257add31 2020-09-09 stsp environment variable.
52 257add31 2020-09-09 stsp .Pp
53 257add31 2020-09-09 stsp Because
54 257add31 2020-09-09 stsp .Xr git 1
55 257add31 2020-09-09 stsp may fail to parse commits without an email address in author data,
56 257add31 2020-09-09 stsp .Xr got 1
57 257add31 2020-09-09 stsp attempts to reject author information with a missing email address.
58 257add31 2020-09-09 stsp .It Ic remote Ar name Brq ...
59 257add31 2020-09-09 stsp Define a remote repository.
60 257add31 2020-09-09 stsp The specified
61 257add31 2020-09-09 stsp .Ar name
62 257add31 2020-09-09 stsp can be used to refer to the remote repository on the command line of
63 257add31 2020-09-09 stsp .Cm got fetch .
64 257add31 2020-09-09 stsp .Pp
65 257add31 2020-09-09 stsp Information about this repository is declared in a block of options
66 257add31 2020-09-09 stsp enclosed in curly brackets:
67 257add31 2020-09-09 stsp .Bl -tag -width Ds
68 257add31 2020-09-09 stsp .It Ic server Ar hostname
69 257add31 2020-09-09 stsp Defines the hostname to use for contacting the remote repository's server.
70 257add31 2020-09-09 stsp .It Ic repository Ar path
71 257add31 2020-09-09 stsp Defines the path to the repository on the remote repository's server.
72 257add31 2020-09-09 stsp .It Ic protocol Ar scheme
73 257add31 2020-09-09 stsp Defines the protocol to use for communicating with the remote repository's
74 257add31 2020-09-09 stsp server.
75 257add31 2020-09-09 stsp .Pp
76 257add31 2020-09-09 stsp The following protocol schemes are supported:
77 257add31 2020-09-09 stsp .Bl -tag -width git+ssh
78 257add31 2020-09-09 stsp .It git
79 257add31 2020-09-09 stsp The Git protocol as implemented by the
80 257add31 2020-09-09 stsp .Xr git-daemon 1
81 257add31 2020-09-09 stsp server.
82 257add31 2020-09-09 stsp Use of this protocol is discouraged since it supports neither authentication
83 257add31 2020-09-09 stsp nor encryption.
84 257add31 2020-09-09 stsp .It git+ssh
85 257add31 2020-09-09 stsp The Git protocol wrapped in an authenticated and encrypted
86 257add31 2020-09-09 stsp .Xr ssh 1
87 257add31 2020-09-09 stsp tunnel.
88 257add31 2020-09-09 stsp With this protocol the hostname may contain an embedded username for
89 257add31 2020-09-09 stsp .Xr ssh 1
90 257add31 2020-09-09 stsp to use:
91 257add31 2020-09-09 stsp .Mt user@hostname
92 257add31 2020-09-09 stsp .It ssh
93 257add31 2020-09-09 stsp Short alias for git+ssh.
94 257add31 2020-09-09 stsp .El
95 257add31 2020-09-09 stsp .It Ic port Ar port
96 257add31 2020-09-09 stsp Defines the port to use for connecting to the remote repository's server.
97 257add31 2020-09-09 stsp The
98 257add31 2020-09-09 stsp .Ar port
99 257add31 2020-09-09 stsp can be specified by number or name.
100 257add31 2020-09-09 stsp The port name to number mappings are found in the file
101 257add31 2020-09-09 stsp .Pa /etc/services ;
102 257add31 2020-09-09 stsp see
103 257add31 2020-09-09 stsp .Xr services 5
104 257add31 2020-09-09 stsp for details.
105 257add31 2020-09-09 stsp If not specified, the default port of the specified
106 257add31 2020-09-09 stsp .Cm protocol
107 257add31 2020-09-09 stsp will be used.
108 b8adfa55 2020-09-25 stsp .It Ic branch Brq Ar branch ...
109 b8adfa55 2020-09-25 stsp Specify one or more branches which
110 b8adfa55 2020-09-25 stsp .Cm got fetch
111 b8adfa55 2020-09-25 stsp should fetch from the remote repository by default.
112 b8adfa55 2020-09-25 stsp The list of branches specified here can be overridden at the
113 b8adfa55 2020-09-25 stsp .Cm got fetch
114 b8adfa55 2020-09-25 stsp command line with the
115 b8adfa55 2020-09-25 stsp .Fl b
116 b8adfa55 2020-09-25 stsp option.
117 257add31 2020-09-09 stsp .It Ic mirror-references Ar yes | no
118 257add31 2020-09-09 stsp This option controls the behaviour of
119 257add31 2020-09-09 stsp .Cm got fetch
120 257add31 2020-09-09 stsp when updating references.
121 257add31 2020-09-09 stsp .Sy Enabling this option can lead to the loss of local commits.
122 257add31 2020-09-09 stsp Maintaining custom changes in a mirror repository is therefore discouraged.
123 257add31 2020-09-09 stsp .Pp
124 257add31 2020-09-09 stsp If this option is not specified or set to
125 257add31 2020-09-09 stsp .Ar no ,
126 257add31 2020-09-09 stsp .Cm got fetch
127 257add31 2020-09-09 stsp will map references of the remote repository into the local repository's
128 257add31 2020-09-09 stsp .Dq refs/remotes/
129 257add31 2020-09-09 stsp namespace.
130 257add31 2020-09-09 stsp .Pp
131 257add31 2020-09-09 stsp If this option is set to
132 257add31 2020-09-09 stsp .Ar yes ,
133 257add31 2020-09-09 stsp all branches in the
134 257add31 2020-09-09 stsp .Dq refs/heads/
135 257add31 2020-09-09 stsp namespace will be updated directly to match the corresponding branches in
136 257add31 2020-09-09 stsp the remote repository.
137 257add31 2020-09-09 stsp .El
138 257add31 2020-09-09 stsp .Sh EXAMPLES
139 257add31 2020-09-09 stsp Configure author information:
140 257add31 2020-09-09 stsp .Bd -literal -offset indent
141 257add31 2020-09-09 stsp author "Flan Hacker <flan_hacker@openbsd.org>"
142 257add31 2020-09-09 stsp .Ed
143 257add31 2020-09-09 stsp .Pp
144 257add31 2020-09-09 stsp Remote repository specification for the Game of Trees repository:
145 257add31 2020-09-09 stsp .Bd -literal -offset indent
146 257add31 2020-09-09 stsp remote "origin" {
147 257add31 2020-09-09 stsp server git.gameoftrees.org
148 257add31 2020-09-09 stsp protocol git
149 257add31 2020-09-09 stsp repository got
150 b8adfa55 2020-09-25 stsp branch { "main" }
151 257add31 2020-09-09 stsp }
152 257add31 2020-09-09 stsp .Ed
153 257add31 2020-09-09 stsp .Pp
154 257add31 2020-09-09 stsp Mirror the OpenBSD src repository from Github:
155 257add31 2020-09-09 stsp .Bd -literal -offset indent
156 257add31 2020-09-09 stsp remote "origin" {
157 257add31 2020-09-09 stsp repository "openbsd/src"
158 257add31 2020-09-09 stsp server git@github.com
159 257add31 2020-09-09 stsp protocol git+ssh
160 257add31 2020-09-09 stsp mirror-references yes
161 257add31 2020-09-09 stsp }
162 257add31 2020-09-09 stsp .Ed
163 257add31 2020-09-09 stsp .Sh FILES
164 257add31 2020-09-09 stsp .Bl -tag -width Ds -compact
165 257add31 2020-09-09 stsp .It Pa got.conf
166 50b0790e 2020-09-11 stsp If present,
167 257add31 2020-09-09 stsp .Nm
168 50b0790e 2020-09-11 stsp located in the root directory of a Git repository supersedes any relevant
169 50b0790e 2020-09-11 stsp settings in Git's
170 257add31 2020-09-09 stsp .Pa config
171 257add31 2020-09-09 stsp file.
172 50b0790e 2020-09-11 stsp .Pp
173 50b0790e 2020-09-11 stsp .It Pa .got/got.conf
174 50b0790e 2020-09-11 stsp If present,
175 50b0790e 2020-09-11 stsp .Nm
176 50b0790e 2020-09-11 stsp located in the
177 50b0790e 2020-09-11 stsp .Pa .got
178 50b0790e 2020-09-11 stsp meta-data directory of a
179 50b0790e 2020-09-11 stsp .Xr got 1
180 50b0790e 2020-09-11 stsp work tree supersedes any relevant settings in the repository's
181 50b0790e 2020-09-11 stsp .Nm
182 50b0790e 2020-09-11 stsp configuration file and Git's
183 50b0790e 2020-09-11 stsp .Pa config
184 50b0790e 2020-09-11 stsp file.
185 257add31 2020-09-09 stsp .El
186 257add31 2020-09-09 stsp .Sh SEE ALSO
187 257add31 2020-09-09 stsp .Xr got 1 ,
188 42536c09 2020-09-11 stsp .Xr git-repository 5 ,
189 50b0790e 2020-09-11 stsp .Xr got-worktree 5
190 53643ae1 2020-09-14 stsp .Sh CAVEATS
191 53643ae1 2020-09-14 stsp .Nm
192 53643ae1 2020-09-14 stsp offers no way to configure the editor spawned by
193 53643ae1 2020-09-14 stsp .Cm got commit ,
194 53643ae1 2020-09-14 stsp .Cm got histedit ,
195 53643ae1 2020-09-14 stsp .Cm got import ,
196 53643ae1 2020-09-14 stsp or
197 53643ae1 2020-09-14 stsp .Cm got tag .
198 53643ae1 2020-09-14 stsp This is deliberate and prevents potential arbitrary command execution
199 53643ae1 2020-09-14 stsp as another user when repositories or work trees are shared between users.
200 53643ae1 2020-09-14 stsp Users should set their
201 53643ae1 2020-09-14 stsp .Ev VISUAL
202 53643ae1 2020-09-14 stsp or
203 53643ae1 2020-09-14 stsp .Ev EDITOR
204 53643ae1 2020-09-14 stsp environment variables instead.
205 53643ae1 2020-09-14 stsp