Blame


1 c75df689 2019-07-14 stsp Game of Trees (Got) is a version control system which prioritizes ease
2 c75df689 2019-07-14 stsp of use and simplicity over flexibility.
3 7cc94e29 2018-09-08 stsp
4 66164023 2019-08-09 stsp Got is still under development; it is being developed exclusively
5 66164023 2019-08-09 stsp on OpenBSD and its target audience are OpenBSD developers. Got is
6 66164023 2019-08-09 stsp ISC-licensed and was designed with pledge(2) and unveil(2) in mind.
7 dd2a8a69 2019-07-14 stsp
8 66164023 2019-08-09 stsp Got uses Git repositories to store versioned data. At present, Got
9 66164023 2019-08-09 stsp supports local version control operations only. Git can be used
10 66164023 2019-08-09 stsp for any functionality which has not yet been implemented in Got.
11 66164023 2019-08-09 stsp It will always remain possible to work with both Got and Git on
12 66164023 2019-08-09 stsp the same repository.
13 66164023 2019-08-09 stsp
14 7cc94e29 2018-09-08 stsp To compile the Got tool suite on OpenBSD, run:
15 7cc94e29 2018-09-08 stsp
16 7cc94e29 2018-09-08 stsp $ make obj
17 7cc94e29 2018-09-08 stsp $ make
18 7cc94e29 2018-09-08 stsp $ make install
19 7cc94e29 2018-09-08 stsp
20 53ccebc2 2019-07-30 stsp This will install the following commands:
21 7cc94e29 2018-09-08 stsp
22 53ccebc2 2019-07-30 stsp got, the command line interface
23 53ccebc2 2019-07-30 stsp tog, an ncurses-based interactive Git repository browser
24 53ccebc2 2019-07-30 stsp several helper programs from the libexec directory
25 53ccebc2 2019-07-30 stsp man pages (only installed if building sources from a Got release tarball)
26 7cc94e29 2018-09-08 stsp
27 53ccebc2 2019-07-30 stsp A Got release tarball will install files under /usr/local by default.
28 53ccebc2 2019-07-30 stsp A build started in Got's Git repository will install files under ~/bin.
29 53ccebc2 2019-07-30 stsp
30 0e673013 2019-01-02 stsp Tests will pass only after 'make install' because they rely on installed
31 c4096499 2019-01-02 stsp binaries in $PATH. Tests in the cmdline directory currently depend on git(1).
32 7cc94e29 2018-09-08 stsp
33 c4096499 2019-01-02 stsp $ doas pkg_add git
34 7cc94e29 2018-09-08 stsp $ make regress
35 7cc94e29 2018-09-08 stsp
36 b32c4525 2020-01-05 stsp To test with packed repositories, run:
37 b32c4525 2020-01-05 stsp
38 b32c4525 2020-01-05 stsp $ make regress GOT_TEST_PACK=1
39 b32c4525 2020-01-05 stsp
40 53ccebc2 2019-07-30 stsp Man page files in the Got source tree can be viewed with 'man -l':
41 7cc94e29 2018-09-08 stsp
42 107f9ed5 2019-07-27 klemens $ man -l got/got.1
43 107f9ed5 2019-07-27 klemens $ man -l got/git-repository.5
44 107f9ed5 2019-07-27 klemens $ man -l got/got-worktree.5
45 107f9ed5 2019-07-27 klemens $ man -l tog/tog.1
46 42620da7 2019-07-14 stsp
47 e1fa9f20 2019-07-14 stsp EXAMPLES in got.1 contains a quick-start guide for OpenBSD developers.
48 42620da7 2019-07-14 stsp
49 270ebbdc 2020-01-16 stsp Game of Trees Web (Gotweb) is a CGI program which displays repository data
50 e09ede37 2020-01-28 stsp and is designed to work with httpd(8) and slowcgi(8).
51 e1fa9f20 2019-07-14 stsp
52 270ebbdc 2020-01-16 stsp To compile gotweb on OpenBSD, run:
53 270ebbdc 2020-01-16 stsp
54 270ebbdc 2020-01-16 stsp # pkg_add kcgi
55 270ebbdc 2020-01-16 stsp $ make web
56 270ebbdc 2020-01-16 stsp # make web-install
57 270ebbdc 2020-01-16 stsp
58 270ebbdc 2020-01-16 stsp This will create the following files:
59 270ebbdc 2020-01-16 stsp the CGI program /var/www/cgi-bin/gotweb/gotweb
60 270ebbdc 2020-01-16 stsp helper programs from the libexec directory in /var/www/cgi-bin/gotweb/libexec
61 270ebbdc 2020-01-16 stsp several template files in /var/www/cgi-bin/gw_tmpl/
62 270ebbdc 2020-01-16 stsp html, css, and image files in /var/www/htdocs/gotweb/gotweb/
63 270ebbdc 2020-01-16 stsp the directory /var/www/tmp/
64 270ebbdc 2020-01-16 stsp man pages (only installed if building sources from a Got release tarball)
65 270ebbdc 2020-01-16 stsp
66 270ebbdc 2020-01-16 stsp Example configuration for httpd.conf:
67 270ebbdc 2020-01-16 stsp
68 270ebbdc 2020-01-16 stsp types { include "/usr/share/misc/mime.types" }
69 270ebbdc 2020-01-16 stsp server "localhost" {
70 270ebbdc 2020-01-16 stsp listen on * port 80
71 270ebbdc 2020-01-16 stsp root "/htdocs/gotweb"
72 270ebbdc 2020-01-16 stsp location "/cgi-bin/*" {
73 270ebbdc 2020-01-16 stsp root "/"
74 270ebbdc 2020-01-16 stsp fastcgi
75 270ebbdc 2020-01-16 stsp }
76 270ebbdc 2020-01-16 stsp location "/*" {
77 270ebbdc 2020-01-16 stsp directory index "index.html"
78 270ebbdc 2020-01-16 stsp }
79 270ebbdc 2020-01-16 stsp }
80 270ebbdc 2020-01-16 stsp
81 e09ede37 2020-01-28 stsp httpd(8) and slowcgi(8) should be enabled and started:
82 e09ede37 2020-01-28 stsp
83 e09ede37 2020-01-28 stsp # rcctl enable httpd slowcgi
84 e09ede37 2020-01-28 stsp # rcctl start httpd slowcgi
85 e09ede37 2020-01-28 stsp
86 270ebbdc 2020-01-16 stsp Gotweb's run-time behaviour can be configured in the gotweb.conf file:
87 270ebbdc 2020-01-16 stsp
88 270ebbdc 2020-01-16 stsp $ man -l gotweb/gotweb.conf.5
89 270ebbdc 2020-01-16 stsp
90 270ebbdc 2020-01-16 stsp
91 42620da7 2019-07-14 stsp Guidelines for reporting problems:
92 42620da7 2019-07-14 stsp
93 42620da7 2019-07-14 stsp All problem/bug reports should include a reproduction recipe in form of a
94 42620da7 2019-07-14 stsp shell script which starts out with an empty repository and runs a series of
95 8deda1af 2019-07-14 stsp Got and/or Git commands to trigger the problem, be it a crash or some other
96 42620da7 2019-07-14 stsp undesirable behaviour.
97 42620da7 2019-07-14 stsp
98 42620da7 2019-07-14 stsp The regress/cmdline directory contains plenty of example scripts.
99 42620da7 2019-07-14 stsp An ideal reproduction recipe is written as an xfail ("expected failure")
100 42620da7 2019-07-14 stsp regression test. For a real-world example of an xfail test, see commits
101 42620da7 2019-07-14 stsp 4866d0842a2b34812818685aaa31d3e0a966412d and
102 8deda1af 2019-07-14 stsp 2b496619daecc1f25b1bc0c53e01685030dc2c74 in Got's history.
103 42620da7 2019-07-14 stsp
104 42620da7 2019-07-14 stsp Please take this request very seriously; Ask for help with writing your
105 42620da7 2019-07-14 stsp regression test before asking for your problem to be fixed. Time invested
106 42620da7 2019-07-14 stsp in writing a regression test saves time wasted on back-and-forth discussion
107 42620da7 2019-07-14 stsp about how the problem can be reproduced. A regression test will need to be
108 42620da7 2019-07-14 stsp written in any case to verify a fix and prevent the problem from resurfacing.
109 42620da7 2019-07-14 stsp
110 9532f6b4 2019-07-14 stsp It is also possible to write test cases in C. Various examples of this
111 7d405766 2019-07-30 stsp exist in the regress/ directory. Most such tests are unit tests; it is
112 7d405766 2019-07-30 stsp unlikely that a problem found during regular usage will require a test
113 7d405766 2019-07-30 stsp to be written in C.
114 9532f6b4 2019-07-14 stsp
115 42620da7 2019-07-14 stsp Some areas of code, such as the tog UI, are not covered by automated tests.
116 56f95bee 2019-07-14 stsp Please always try to find a way to trigger your problem via the command line
117 56f95bee 2019-07-14 stsp interface before reporting a problem without a written test case included.
118 56f95bee 2019-07-14 stsp If writing an automated test really turns out to be impossible, please
119 56f95bee 2019-07-14 stsp explain in very clear terms how the problem can be reproduced.
120 42620da7 2019-07-14 stsp
121 3ba86cef 2019-09-25 stsp Mail problem reports to: gameoftrees@openbsd.org
122 42620da7 2019-07-14 stsp
123 42620da7 2019-07-14 stsp
124 42620da7 2019-07-14 stsp Guidelines for submitting patches:
125 42620da7 2019-07-14 stsp
126 3ba86cef 2019-09-25 stsp Mail patches to: gameoftrees@openbsd.org
127 52be27fc 2019-07-30 stsp Pull requests via any Git hosting sites will likely be overlooked.
128 52be27fc 2019-07-30 stsp Please keep the intended target audience in mind when contributing to Got.
129 3ba86cef 2019-09-25 stsp
130 3ba86cef 2019-09-25 stsp
131 3ba86cef 2019-09-25 stsp Subscribing to the gameoftrees@openbsd.org mailing list:
132 3ba86cef 2019-09-25 stsp
133 3ba86cef 2019-09-25 stsp The mailing list is used for patch reviews, bug reports, and user questions.
134 3ba86cef 2019-09-25 stsp To subscribe, send mail to majordomo@openbsd.org with a message body of:
135 3ba86cef 2019-09-25 stsp subscribe gameoftrees
136 3ba86cef 2019-09-25 stsp
137 3ba86cef 2019-09-25 stsp See https://www.openbsd.org/mail.html for more information.