Blame


1 8797b228 2019-08-04 stsp <!doctype html>
2 8797b228 2019-08-04 stsp <html lang=en>
3 8797b228 2019-08-04 stsp <meta charset=utf-8>
4 8797b228 2019-08-04 stsp
5 8797b228 2019-08-04 stsp <title>Game of Trees (Got): Goals</title>
6 8797b228 2019-08-04 stsp <meta name="description" content="Game of Trees (Got) Goals">
7 8797b228 2019-08-04 stsp <meta name="viewport" content="width=device-width, initial-scale=1">
8 8797b228 2019-08-04 stsp <link rel="stylesheet" type="text/css" href="openbsd.css">
9 8797b228 2019-08-04 stsp <link rel="canonical" href="https://stsp.name/got/goals.html">
10 8797b228 2019-08-04 stsp
11 8797b228 2019-08-04 stsp <h2>
12 8797b228 2019-08-04 stsp <a href="index.html">
13 8797b228 2019-08-04 stsp <i>Game of Trees</i></a>
14 8797b228 2019-08-04 stsp Goals
15 8797b228 2019-08-04 stsp </h2>
16 8797b228 2019-08-04 stsp <hr>
17 8797b228 2019-08-04 stsp
18 76f4d96c 2019-08-06 stsp <p id="callout">
19 76f4d96c 2019-08-06 stsp Current goal:
20 76f4d96c 2019-08-06 stsp <br>
21 a1650ec7 2019-08-06 stsp Work with a handful of developers who want to regularly use Got for their
22 76f4d96c 2019-08-06 stsp work on OpenBSD. Improve version control operation based on their feedback.
23 76f4d96c 2019-08-06 stsp
24 76f4d96c 2019-08-06 stsp <h3>Project guidelines</h3>
25 8797b228 2019-08-04 stsp <ul>
26 76f4d96c 2019-08-06 stsp <li>
27 76f4d96c 2019-08-06 stsp Follow <a href="https://www.openbsd.org">OpenBSD</a>'s security practices
28 76f4d96c 2019-08-06 stsp and coding style.
29 76f4d96c 2019-08-06 stsp <ul>
30 76f4d96c 2019-08-06 stsp <li>Use a development process based on code review in email.
31 76f4d96c 2019-08-06 stsp <li>Consistently use
32 76f4d96c 2019-08-06 stsp <a href="https://man.openbsd.org/pledge">pledge(2)</a> and
33 76f4d96c 2019-08-06 stsp <a href="https://man.openbsd.org/unveil">unveil(2)</a> across the code base.
34 76f4d96c 2019-08-06 stsp <li>Use privilege-separation when parsing repository data from network or disk.
35 76f4d96c 2019-08-06 stsp </ul>
36 76f4d96c 2019-08-06 stsp <li>
37 76f4d96c 2019-08-06 stsp Keep the entire code base BSD-licenced.
38 76f4d96c 2019-08-06 stsp </ul>
39 76f4d96c 2019-08-06 stsp
40 76f4d96c 2019-08-06 stsp <p>
41 76f4d96c 2019-08-06 stsp <h3>Long-term goals</h3>
42 76f4d96c 2019-08-06 stsp <ul>
43 76f4d96c 2019-08-06 stsp <li>
44 76f4d96c 2019-08-06 stsp Remain on-disk compatible with bare
45 76f4d96c 2019-08-06 stsp <a href="https://git-scm.com">Git</a> repositories.
46 76f4d96c 2019-08-06 stsp <ul>
47 76f4d96c 2019-08-06 stsp <li>Don't bother with Git-compatibility beyond this requirement.
48 76f4d96c 2019-08-06 stsp </ul>
49 299409c0 2019-08-05 stsp <li>Provide a complete version control tool suite for OpenBSD.
50 8797b228 2019-08-04 stsp <ul>
51 299409c0 2019-08-05 stsp <li>Intuitive command line interface for required version control operations
52 299409c0 2019-08-05 stsp (<a href="got.1.html">got</a>).
53 299409c0 2019-08-05 stsp <li>Interactive repository browser for history analysis and review of
54 299409c0 2019-08-05 stsp committed changes (<a href="tog.1.html">tog</a>).
55 299409c0 2019-08-05 stsp <li>CGI script repository browser for web servers.
56 299409c0 2019-08-05 stsp <li>Repository administration tooling with a strong focus on backup and recovery.
57 299409c0 2019-08-05 stsp <li>Repository server for hosting a central repository and synchronizing
58 299409c0 2019-08-05 stsp changes to a cascade of public and private mirrors.
59 8797b228 2019-08-04 stsp </ul>
60 8797b228 2019-08-04 stsp <li>
61 76f4d96c 2019-08-06 stsp Consider workflow requirements of OpenBSD developers.
62 8797b228 2019-08-04 stsp <ul>
63 299409c0 2019-08-05 stsp <li>Strong built-in support for a centralized repository model.
64 299409c0 2019-08-05 stsp <li>Keep things easy for developers who don't need branches.
65 299409c0 2019-08-05 stsp <li>Support local branches for developers who need them.
66 299409c0 2019-08-05 stsp <li>Support &quot;-stable&quot; release branches.
67 299409c0 2019-08-05 stsp <li>Support features required by the OpenBSD project's build infrastructure.
68 1f33b18b 2019-08-05 stsp </ul>
69 76f4d96c 2019-08-06 stsp <li>Implement authenticated and encrypted network communications.
70 299409c0 2019-08-05 stsp <ul>
71 299409c0 2019-08-05 stsp <li>Provide <a href="https://openssh.com">SSH</a> and optional
72 299409c0 2019-08-05 stsp <a href="https://libressl.org">TLS</a> support for cloning repositories
73 299409c0 2019-08-05 stsp and pulling changes.
74 299409c0 2019-08-05 stsp <li>Exclusively rely on SSH for pushing changes.
75 76f4d96c 2019-08-06 stsp <li>Do not implement any support for plaintext network communications.
76 299409c0 2019-08-05 stsp </ul>
77 8797b228 2019-08-04 stsp </ul>