Blame


1 030916b5 2018-07-12 stsp .\"
2 030916b5 2018-07-12 stsp .\" Copyright (c) 2018 Stefan Sperling
3 030916b5 2018-07-12 stsp .\"
4 030916b5 2018-07-12 stsp .\" Permission to use, copy, modify, and distribute this software for any
5 030916b5 2018-07-12 stsp .\" purpose with or without fee is hereby granted, provided that the above
6 030916b5 2018-07-12 stsp .\" copyright notice and this permission notice appear in all copies.
7 030916b5 2018-07-12 stsp .\"
8 030916b5 2018-07-12 stsp .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 030916b5 2018-07-12 stsp .\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 030916b5 2018-07-12 stsp .\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 030916b5 2018-07-12 stsp .\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 030916b5 2018-07-12 stsp .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13 030916b5 2018-07-12 stsp .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14 030916b5 2018-07-12 stsp .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15 030916b5 2018-07-12 stsp .\"
16 030916b5 2018-07-12 stsp .Dd $Mdocdate$
17 030916b5 2018-07-12 stsp .Dt TOG 1
18 030916b5 2018-07-12 stsp .Os
19 030916b5 2018-07-12 stsp .Sh NAME
20 030916b5 2018-07-12 stsp .Nm tog
21 aee2a8bd 2019-08-05 stsp .Nd Git repository browser
22 030916b5 2018-07-12 stsp .Sh SYNOPSIS
23 030916b5 2018-07-12 stsp .Nm
24 6a0a1bd4 2022-10-04 op .Op Fl hV
25 6a0a1bd4 2022-10-04 op .Ar command
26 030916b5 2018-07-12 stsp .Op Ar arg ...
27 ee85c5e8 2020-02-29 stsp .Pp
28 ee85c5e8 2020-02-29 stsp .Nm
29 ee85c5e8 2020-02-29 stsp .Ar path
30 030916b5 2018-07-12 stsp .Sh DESCRIPTION
31 030916b5 2018-07-12 stsp .Nm
32 aee2a8bd 2019-08-05 stsp is an interactive read-only browser for Git repositories.
33 030916b5 2018-07-12 stsp This repository format is described in
34 5e5560e1 2018-08-01 stsp .Xr git-repository 5 .
35 030916b5 2018-07-12 stsp .Pp
36 030916b5 2018-07-12 stsp .Nm
37 0cf4efb1 2018-09-29 stsp supports several types of views which display repository data:
38 87aa0e98 2018-08-18 stsp .Bl -tag -width Ds
39 9419758a 2019-03-27 stsp .It Log view
40 87aa0e98 2018-08-18 stsp Displays commits in the repository's history.
41 87aa0e98 2018-08-18 stsp This view is displayed initially if no
42 87aa0e98 2018-08-18 stsp .Ar command
43 ee85c5e8 2020-02-29 stsp is specified, or if just a
44 ee85c5e8 2020-02-29 stsp .Ar path
45 87aa0e98 2018-08-18 stsp is specified.
46 9419758a 2019-03-27 stsp .It Diff view
47 87aa0e98 2018-08-18 stsp Displays changes made in a particular commit.
48 9419758a 2019-03-27 stsp .It Blame view
49 87aa0e98 2018-08-18 stsp Displays the line-by-line history of a file.
50 9419758a 2019-03-27 stsp .It Tree view
51 87aa0e98 2018-08-18 stsp Displays the tree corresponding to a particular commit.
52 38cb327b 2020-11-24 stsp .It Ref view
53 38cb327b 2020-11-24 stsp Displays references in the repository.
54 87aa0e98 2018-08-18 stsp .El
55 87aa0e98 2018-08-18 stsp .Pp
56 87aa0e98 2018-08-18 stsp .Nm
57 87aa0e98 2018-08-18 stsp provides global and command-specific key bindings and options.
58 640cd7ff 2022-06-22 mark Some command-specific key bindings may be prefixed with an integer, which is
59 640cd7ff 2022-06-22 mark denoted by N in the descriptions below, and is used as a modifier to the
60 640cd7ff 2022-06-22 mark operation as indicated.
61 640cd7ff 2022-06-22 mark .Nm
62 f0032ce6 2022-07-02 mark will echo digits to the screen when count modifiers are entered, and complete
63 f0032ce6 2022-07-02 mark the sequence upon input of the first non-numeric character.
64 f0032ce6 2022-07-02 mark Count modifiers can be aborted by entering an unmapped key.
65 a6d37fac 2022-07-03 mark Once a compound command is executed, the operation can be cancelled with
66 a6d37fac 2022-07-03 mark .Cm C-g
67 a6d37fac 2022-07-03 mark or
68 a6d37fac 2022-07-03 mark .Cm Backspace .
69 3b95caf0 2022-10-04 stsp .Pp
70 3b95caf0 2022-10-04 stsp Global options must precede the command name, and are as follows:
71 3b95caf0 2022-10-04 stsp .Bl -tag -width tenletters
72 3b95caf0 2022-10-04 stsp .It Fl h
73 3b95caf0 2022-10-04 stsp Display usage information.
74 3b95caf0 2022-10-04 stsp .It Fl V , -version
75 3b95caf0 2022-10-04 stsp Display program version and exit immediately.
76 3b95caf0 2022-10-04 stsp .El
77 c23f7187 2022-07-12 stsp .Pp
78 87aa0e98 2018-08-18 stsp The global key bindings are:
79 87aa0e98 2018-08-18 stsp .Bl -tag -width Ds
80 ec2a9698 2022-09-15 mark .It Cm H, F1
81 ec2a9698 2022-09-15 mark Display run-time help.
82 ec2a9698 2022-09-15 mark Key bindings for the focussed view will be displayed.
83 ec2a9698 2022-09-15 mark Pressing this again inside the help view will toggle the display of
84 ec2a9698 2022-09-15 mark key bindings for all
85 ec2a9698 2022-09-15 mark .Nm
86 ec2a9698 2022-09-15 mark views.
87 87aa0e98 2018-08-18 stsp .It Cm Q
88 87aa0e98 2018-08-18 stsp Quit
89 87aa0e98 2018-08-18 stsp .Nm .
90 87aa0e98 2018-08-18 stsp .It Cm q
91 87aa0e98 2018-08-18 stsp Quit the view which is in focus.
92 87aa0e98 2018-08-18 stsp .It Cm Tab
93 c0d30c23 2018-10-07 stsp Switch focus between views.
94 61417565 2022-06-20 mark .It Cm F
95 c0d30c23 2018-10-07 stsp Toggle fullscreen mode for a split-screen view.
96 e9b3576f 2019-03-27 stsp .Nm
97 67d6e2c2 2022-07-12 stsp will automatically use vertical split-screen views if the size of the
98 67d6e2c2 2022-07-12 stsp terminal window is sufficiently large.
99 d2366e29 2022-07-07 mark .It Cm S
100 2572d286 2022-07-12 stsp Switch the current split-screen layout, and render all active views in
101 2572d286 2022-07-12 stsp this new layout.
102 67d6e2c2 2022-07-12 stsp The split-screen layout can be either vertical or horizontal.
103 2572d286 2022-07-12 stsp If the terminal is not wide enough when switching to a vertical split,
104 2572d286 2022-07-12 stsp views will render in fullscreen.
105 3c1dfe12 2022-07-08 mark .It Cm -
106 3c1dfe12 2022-07-08 mark When in a split-screen view, decrease the size of the focussed split
107 3c1dfe12 2022-07-08 mark N increments (default: 1).
108 3c1dfe12 2022-07-08 mark .It Cm +
109 3c1dfe12 2022-07-08 mark When in a split-screen view, increase the size of the focussed split
110 3c1dfe12 2022-07-08 mark N increments (default: 1).
111 94b80cfa 2022-08-01 mark .It Cm G
112 94b80cfa 2022-08-01 mark Go to line N in the view (default: last line).
113 94b80cfa 2022-08-01 mark .It Cm g
114 94b80cfa 2022-08-01 mark Go to line N in the view (default: first line).
115 d627976f 2023-02-01 mark .It Cm Right-arrow, l
116 d627976f 2023-02-01 mark Scroll view to the right N increments (default: 1).
117 d627976f 2023-02-01 mark .br
118 d627976f 2023-02-01 mark Output moves left on the screen.
119 d627976f 2023-02-01 mark .It Cm Left-arrow, h
120 d627976f 2023-02-01 mark Scroll view to the left N increments (default: 1).
121 d627976f 2023-02-01 mark .br
122 d627976f 2023-02-01 mark Output moves right on the screen.
123 d627976f 2023-02-01 mark .It Cm $
124 d627976f 2023-02-01 mark Scroll view to the rightmost position.
125 d627976f 2023-02-01 mark .It Cm 0
126 d627976f 2023-02-01 mark Scroll view left to the start of the line.
127 030916b5 2018-07-12 stsp .El
128 030916b5 2018-07-12 stsp .Pp
129 030916b5 2018-07-12 stsp The commands for
130 030916b5 2018-07-12 stsp .Nm
131 030916b5 2018-07-12 stsp are as follows:
132 030916b5 2018-07-12 stsp .Bl -tag -width blame
133 5fc4f020 2022-08-30 op .It Xo
134 5fc4f020 2022-08-30 op .Cm log
135 5fc4f020 2022-08-30 op .Op Fl b
136 5fc4f020 2022-08-30 op .Op Fl c Ar commit
137 5fc4f020 2022-08-30 op .Op Fl r Ar repository-path
138 5fc4f020 2022-08-30 op .Op Ar path
139 5fc4f020 2022-08-30 op .Xc
140 030916b5 2018-07-12 stsp Display history of a repository.
141 ecb28ae0 2018-07-16 stsp If a
142 ecb28ae0 2018-07-16 stsp .Ar path
143 ecb28ae0 2018-07-16 stsp is specified, show only commits which modified this path.
144 dc990cbf 2020-02-22 stsp If invoked in a work tree, the
145 dc990cbf 2020-02-22 stsp .Ar path
146 dc990cbf 2020-02-22 stsp is interpreted relative to the current working directory,
147 dc990cbf 2020-02-22 stsp and the work tree's path prefix is implicitly prepended.
148 dc990cbf 2020-02-22 stsp Otherwise, the path is interpreted relative to the repository root.
149 030916b5 2018-07-12 stsp .Pp
150 030916b5 2018-07-12 stsp This command is also executed if no explicit command is specified.
151 030916b5 2018-07-12 stsp .Pp
152 030916b5 2018-07-12 stsp The key bindings for
153 030916b5 2018-07-12 stsp .Cm tog log
154 640cd7ff 2022-06-22 mark are as follows (N denotes optional prefixed count modifier):
155 030916b5 2018-07-12 stsp .Bl -tag -width Ds
156 02ffd0d5 2021-10-17 stsp .It Cm Down-arrow, j, >, Full stop, Ctrl-n
157 640cd7ff 2022-06-22 mark Move the selection cursor down N lines (default: 1).
158 02ffd0d5 2021-10-17 stsp .It Cm Up-arrow, k, <, Comma, Ctrl-p
159 640cd7ff 2022-06-22 mark Move the selection cursor up N lines (default: 1).
160 48bb96f0 2022-06-20 naddy .It Cm Page-down, Space, Ctrl+f, f
161 640cd7ff 2022-06-22 mark Move the selection cursor down N pages (default: 1).
162 61417565 2022-06-20 mark .It Cm Page-up, Ctrl+b, b
163 640cd7ff 2022-06-22 mark Move the selection cursor up N pages (default: 1).
164 33c3719a 2022-06-15 stsp .It Cm Ctrl+d, d
165 640cd7ff 2022-06-22 mark Move the selection cursor down N half pages (default: 1).
166 33c3719a 2022-06-15 stsp .It Cm Ctrl+u, u
167 640cd7ff 2022-06-22 mark Move the selection cursor up N half pages (default: 1).
168 0b3f028d 2023-01-09 mark .It Cm Home, =
169 912a3f79 2021-08-30 j Move the cursor to the newest commit.
170 0b3f028d 2023-01-09 mark .It Cm End, *
171 912a3f79 2021-08-30 j Move the cursor to the oldest commit.
172 1dd93b2a 2021-08-30 stsp This will traverse all commits on the current branch which may take
173 1dd93b2a 2021-08-30 stsp a long time depending on the number of commits in branch history.
174 e38d4cde 2022-03-21 naddy If needed, this operation can be cancelled with
175 a6d37fac 2022-07-03 mark .Cm C-g
176 a6d37fac 2022-07-03 mark or
177 9ebbe6e1 2021-08-30 stsp .Cm Backspace .
178 0b3f028d 2023-01-09 mark .It Cm g
179 0b3f028d 2023-01-09 mark Move the cursor to commit N (default: 1).
180 0b3f028d 2023-01-09 mark .It Cm G
181 0b3f028d 2023-01-09 mark Like
182 0b3f028d 2023-01-09 mark .Cm g
183 0b3f028d 2023-01-09 mark but defaults to the oldest commit.
184 48bb96f0 2022-06-20 naddy .It Cm Enter
185 c0d30c23 2018-10-07 stsp Open a
186 030916b5 2018-07-12 stsp .Cm diff
187 030916b5 2018-07-12 stsp view showing file changes made in the currently selected commit.
188 5e98fb33 2022-07-22 mark .It Cm T
189 a60a9dc4 2019-05-13 jcs Open a
190 030916b5 2018-07-12 stsp .Cm tree
191 030916b5 2018-07-12 stsp view showing the tree for the currently selected commit.
192 5036bf37 2018-09-24 stsp .It Cm Backspace
193 26f0cb24 2021-08-30 j Show log entries for the parent directory of the currently selected path.
194 26f0cb24 2021-08-30 j However when an active search is in progress or when additional commits
195 26f0cb24 2021-08-30 j are loaded,
196 678cbce5 2019-07-28 stsp .Cm Backspace
197 26f0cb24 2021-08-30 j aborts the running operation.
198 60493ae3 2019-06-20 stsp .It Cm /
199 60493ae3 2019-06-20 stsp Prompt for a search pattern and start searching for matching commits.
200 60493ae3 2019-06-20 stsp The search pattern is an extended regular expression which is matched
201 df0b3d8a 2019-06-28 stsp against a commit's author name, committer name, log message, and
202 df0b3d8a 2019-06-28 stsp commit ID SHA1 hash.
203 e6c76b79 2019-06-21 stsp Regular expression syntax is documented in
204 e6c76b79 2019-06-21 stsp .Xr re_format 7 .
205 568eae95 2022-09-11 mark .It Cm &
206 e19e72cd 2022-09-23 stsp Prompt for a pattern and limit the log view's list of commits to those
207 e19e72cd 2022-09-23 stsp which match the pattern.
208 e19e72cd 2022-09-23 stsp If no pattern is specified, i.e. the
209 e19e72cd 2022-09-23 stsp .Cm &
210 e19e72cd 2022-09-23 stsp prompt is immediately closed with the Enter key, then the pattern is
211 e19e72cd 2022-09-23 stsp cleared.
212 e19e72cd 2022-09-23 stsp Until the pattern is cleared, the limited list of commits replaces the
213 e19e72cd 2022-09-23 stsp full list of commits for all operations supported by the log view.
214 e19e72cd 2022-09-23 stsp For example, a search started with
215 568eae95 2022-09-11 mark .Cm /
216 e19e72cd 2022-09-23 stsp will search the limited list of commits, rather than searching all commits.
217 e19e72cd 2022-09-23 stsp The pattern is an extended regular expression which is matched
218 e19e72cd 2022-09-23 stsp against a commit's author name, committer name, log message, and
219 e19e72cd 2022-09-23 stsp commit ID SHA1 hash.
220 e19e72cd 2022-09-23 stsp Regular expression syntax is documented in
221 e19e72cd 2022-09-23 stsp .Xr re_format 7 .
222 60493ae3 2019-06-20 stsp .It Cm n
223 640cd7ff 2022-06-22 mark Find the Nth next commit which matches the current search pattern (default: 1).
224 640cd7ff 2022-06-22 mark .br
225 a6d37fac 2022-07-03 mark Searching continues until either a match is found or
226 a6d37fac 2022-07-03 mark .Cm C-g
227 a6d37fac 2022-07-03 mark or the
228 678cbce5 2019-07-28 stsp .Cm Backspace
229 678cbce5 2019-07-28 stsp key is pressed.
230 b1bf1435 2019-06-21 stsp .It Cm N
231 640cd7ff 2022-06-22 mark Find the Nth previous commit which matches the current search pattern
232 640cd7ff 2022-06-22 mark (default: 1).
233 640cd7ff 2022-06-22 mark .br
234 a6d37fac 2022-07-03 mark Searching continues until either a match is found or
235 a6d37fac 2022-07-03 mark .Cm C-g
236 a6d37fac 2022-07-03 mark or the
237 678cbce5 2019-07-28 stsp .Cm Backspace
238 678cbce5 2019-07-28 stsp key is pressed.
239 bf0668dd 2019-06-26 stsp .It Cm Ctrl+l
240 01ca22b1 2020-12-07 stsp Reload the
241 01ca22b1 2020-12-07 stsp .Cm log
242 01ca22b1 2020-12-07 stsp view with new commits found in the repository.
243 b672a97a 2020-01-27 stsp .It Cm B
244 01ca22b1 2020-12-07 stsp Reload the
245 01ca22b1 2020-12-07 stsp .Cm log
246 01ca22b1 2020-12-07 stsp view and toggle display of merged commits.
247 b672a97a 2020-01-27 stsp The
248 b672a97a 2020-01-27 stsp .Fl b
249 b672a97a 2020-01-27 stsp option determines whether merged commits are displayed initially.
250 5e98fb33 2022-07-22 mark .It Cm R
251 38cb327b 2020-11-24 stsp Open a
252 38cb327b 2020-11-24 stsp .Cm ref
253 38cb327b 2020-11-24 stsp view listing all references in the repository.
254 38cb327b 2020-11-24 stsp This can then be used to open a new
255 38cb327b 2020-11-24 stsp .Cm log
256 38cb327b 2020-11-24 stsp view for arbitrary branches and tags.
257 10aab77f 2022-07-19 op .It Cm @
258 3bf00f25 2023-01-02 stsp Toggle between showing the committer name and the author name.
259 030916b5 2018-07-12 stsp .El
260 030916b5 2018-07-12 stsp .Pp
261 030916b5 2018-07-12 stsp The options for
262 030916b5 2018-07-12 stsp .Cm tog log
263 030916b5 2018-07-12 stsp are as follows:
264 030916b5 2018-07-12 stsp .Bl -tag -width Ds
265 b672a97a 2020-01-27 stsp .It Fl b
266 1137e0ae 2020-01-27 stsp Display individual commits which were merged into the current branch
267 1137e0ae 2020-01-27 stsp from other branches.
268 b672a97a 2020-01-27 stsp By default,
269 b672a97a 2020-01-27 stsp .Cm tog log
270 b672a97a 2020-01-27 stsp shows the linear history of the current branch only.
271 b672a97a 2020-01-27 stsp The
272 b672a97a 2020-01-27 stsp .Cm B
273 b672a97a 2020-01-27 stsp key binding can be used to toggle display of merged commits at run-time.
274 030916b5 2018-07-12 stsp .It Fl c Ar commit
275 030916b5 2018-07-12 stsp Start traversing history at the specified
276 030916b5 2018-07-12 stsp .Ar commit .
277 c4df265e 2023-07-19 mark The expected argument is a commit ID SHA1 hash, or a reference name or keyword
278 c4df265e 2023-07-19 mark which will be resolved to a commit ID.
279 0db75f06 2019-07-07 stsp An abbreviated hash argument will be expanded to a full SHA1 hash
280 0db75f06 2019-07-07 stsp automatically, provided the abbreviation is unique.
281 c4df265e 2023-07-19 mark The keywords
282 c4df265e 2023-07-19 mark .Qq :base
283 c4df265e 2023-07-19 mark and
284 c4df265e 2023-07-19 mark .Qq :head
285 c4df265e 2023-07-19 mark resolve to the work tree's base commit and branch head, respectively.
286 c4df265e 2023-07-19 mark The former is only valid if invoked in a work tree, while the latter will
287 c4df265e 2023-07-19 mark resolve to the tip of the work tree's current branch if invoked in a
288 c4df265e 2023-07-19 mark work tree, otherwise it will resolve to the repository's HEAD reference.
289 c4df265e 2023-07-19 mark Keywords and references may be appended with
290 c4df265e 2023-07-19 mark .Qq :+
291 c4df265e 2023-07-19 mark or
292 c4df265e 2023-07-19 mark .Qq :-
293 c4df265e 2023-07-19 mark modifiers and an optional integer N to denote the
294 c4df265e 2023-07-19 mark Nth descendant or antecedent by first parent traversal, respectively;
295 c4df265e 2023-07-19 mark for example,
296 c4df265e 2023-07-19 mark .Sy :head:-2
297 c4df265e 2023-07-19 mark denotes the work tree branch head's 2nd generation ancestor, and
298 c4df265e 2023-07-19 mark .Sy :base:+4
299 c4df265e 2023-07-19 mark denotes the 4th generation descendant of the work tree's base commit.
300 c4df265e 2023-07-19 mark Similarly,
301 c4df265e 2023-07-19 mark .Sy foobar:+3
302 c4df265e 2023-07-19 mark will denote the 3rd generation descendant of the commit resolved by the
303 c4df265e 2023-07-19 mark .Qq foobar
304 c4df265e 2023-07-19 mark reference.
305 c4df265e 2023-07-19 mark A
306 c4df265e 2023-07-19 mark .Qq :+
307 c4df265e 2023-07-19 mark or
308 c4df265e 2023-07-19 mark .Qq :-
309 c4df265e 2023-07-19 mark modifier without a trailing integer has an implicit
310 c4df265e 2023-07-19 mark .Qq 1
311 c4df265e 2023-07-19 mark appended
312 c4df265e 2023-07-19 mark .Po e.g.,
313 c4df265e 2023-07-19 mark .Sy :base:+
314 c4df265e 2023-07-19 mark is equivalent to
315 c4df265e 2023-07-19 mark .Sy :base:+1
316 c4df265e 2023-07-19 mark .Pc .
317 ecb28ae0 2018-07-16 stsp .It Fl r Ar repository-path
318 ecb28ae0 2018-07-16 stsp Use the repository at the specified path.
319 ecb28ae0 2018-07-16 stsp If not specified, assume the repository is located at or above the current
320 ecb28ae0 2018-07-16 stsp working directory.
321 212b39d1 2020-02-24 naddy If this directory is a
322 212b39d1 2020-02-24 naddy .Xr got 1
323 212b39d1 2020-02-24 naddy work tree, use the repository path associated with this work tree.
324 030916b5 2018-07-12 stsp .El
325 5fc4f020 2022-08-30 op .It Xo
326 5fc4f020 2022-08-30 op .Cm diff
327 5fc4f020 2022-08-30 op .Op Fl aw
328 5fc4f020 2022-08-30 op .Op Fl C Ar number
329 5fc4f020 2022-08-30 op .Op Fl r Ar repository-path
330 5fc4f020 2022-08-30 op .Ar object1
331 5fc4f020 2022-08-30 op .Ar object2
332 5fc4f020 2022-08-30 op .Xc
333 030916b5 2018-07-12 stsp Display the differences between two objects in the repository.
334 c4df265e 2023-07-19 mark Treat each of the two arguments as a reference, a tag name, an object
335 c4df265e 2023-07-19 mark ID SHA1 hash, or a keyword and display differences between the corresponding
336 c4df265e 2023-07-19 mark objects.
337 3dbaef42 2020-11-24 stsp Both objects must be of the same type (blobs, trees, or commits).
338 0db75f06 2019-07-07 stsp An abbreviated hash argument will be expanded to a full SHA1 hash
339 0db75f06 2019-07-07 stsp automatically, provided the abbreviation is unique.
340 c4df265e 2023-07-19 mark The keywords
341 c4df265e 2023-07-19 mark .Qq :base
342 c4df265e 2023-07-19 mark and
343 c4df265e 2023-07-19 mark .Qq :head
344 c4df265e 2023-07-19 mark resolve to the work tree's base commit and branch head, respectively.
345 c4df265e 2023-07-19 mark The former is only valid if invoked in a work tree, while the latter will
346 c4df265e 2023-07-19 mark resolve to the tip of the work tree's current branch if invoked in a
347 c4df265e 2023-07-19 mark work tree, otherwise it will resolve to the repository's HEAD reference.
348 c4df265e 2023-07-19 mark Keywords and references may be appended with
349 c4df265e 2023-07-19 mark .Qq :+
350 c4df265e 2023-07-19 mark or
351 c4df265e 2023-07-19 mark .Qq :-
352 c4df265e 2023-07-19 mark modifiers and an optional integer N to denote the
353 c4df265e 2023-07-19 mark Nth descendant or antecedent by first parent traversal, respectively;
354 c4df265e 2023-07-19 mark for example,
355 c4df265e 2023-07-19 mark .Sy :head:-2
356 c4df265e 2023-07-19 mark denotes the work tree branch head's 2nd generation ancestor, and
357 c4df265e 2023-07-19 mark .Sy :base:+4
358 c4df265e 2023-07-19 mark denotes the 4th generation descendant of the work tree's base commit.
359 c4df265e 2023-07-19 mark Similarly,
360 c4df265e 2023-07-19 mark .Sy foobar:+3
361 c4df265e 2023-07-19 mark will denote the 3rd generation descendant of the commit resolved by the
362 c4df265e 2023-07-19 mark .Qq foobar
363 c4df265e 2023-07-19 mark reference.
364 c4df265e 2023-07-19 mark A
365 c4df265e 2023-07-19 mark .Qq :+
366 c4df265e 2023-07-19 mark or
367 c4df265e 2023-07-19 mark .Qq :-
368 c4df265e 2023-07-19 mark modifier without a trailing integer has an implicit
369 c4df265e 2023-07-19 mark .Qq 1
370 c4df265e 2023-07-19 mark appended
371 c4df265e 2023-07-19 mark .Po e.g.,
372 c4df265e 2023-07-19 mark .Sy :base:+
373 c4df265e 2023-07-19 mark is equivalent to
374 c4df265e 2023-07-19 mark .Sy :base:+1
375 c4df265e 2023-07-19 mark .Pc .
376 030916b5 2018-07-12 stsp .Pp
377 030916b5 2018-07-12 stsp The key bindings for
378 030916b5 2018-07-12 stsp .Cm tog diff
379 640cd7ff 2022-06-22 mark are as follows (N denotes optional prefixed count modifier):
380 030916b5 2018-07-12 stsp .Bl -tag -width Ds
381 64453f7e 2020-11-21 stsp .It Cm a
382 64453f7e 2020-11-21 stsp Toggle treatment of file contents as ASCII text even if binary data was
383 64453f7e 2020-11-21 stsp detected.
384 02ffd0d5 2021-10-17 stsp .It Cm Down-arrow, j, Ctrl-n
385 640cd7ff 2022-06-22 mark Scroll down N lines (default: 1).
386 02ffd0d5 2021-10-17 stsp .It Cm Up-arrow, k, Ctrl-p
387 640cd7ff 2022-06-22 mark Scroll up N lines (default: 1).
388 61417565 2022-06-20 mark .It Cm Page-down, Space, Ctrl+f, f
389 640cd7ff 2022-06-22 mark Scroll down N pages (default: 1).
390 61417565 2022-06-20 mark .It Cm Page-up, Ctrl+b, b
391 640cd7ff 2022-06-22 mark Scroll up N pages (default: 1).
392 33c3719a 2022-06-15 stsp .It Cm Ctrl+d, d
393 640cd7ff 2022-06-22 mark Scroll down N half pages (default: 1).
394 33c3719a 2022-06-15 stsp .It Cm Ctrl+u, u
395 640cd7ff 2022-06-22 mark Scroll up N half pages (default: 1).
396 0b3f028d 2023-01-09 mark .It Cm Home
397 912a3f79 2021-08-30 j Scroll to the top of the view.
398 0b3f028d 2023-01-09 mark .It Cm End
399 912a3f79 2021-08-30 j Scroll to the bottom of the view.
400 0b3f028d 2023-01-09 mark .It Cm g
401 0b3f028d 2023-01-09 mark Scroll to line N (default: 1).
402 0b3f028d 2023-01-09 mark .It Cm G
403 0b3f028d 2023-01-09 mark Like
404 0b3f028d 2023-01-09 mark .Cm g
405 0b3f028d 2023-01-09 mark but defaults to the last line in the diff.
406 c7d5c43c 2022-08-04 mark .It Cm \&(
407 c7d5c43c 2022-08-04 mark Navigate to the Nth previous file in the diff (default: 1).
408 c7d5c43c 2022-08-04 mark .It Cm \&)
409 c7d5c43c 2022-08-04 mark Navigate to the Nth next file in the diff (default: 1).
410 c7d5c43c 2022-08-04 mark .It Cm \&{
411 c7d5c43c 2022-08-04 mark Navigate to the Nth previous hunk in the diff (default: 1).
412 c7d5c43c 2022-08-04 mark .It Cm \&}
413 c7d5c43c 2022-08-04 mark Navigate to the Nth next hunk in the diff (default: 1).
414 dfc23429 2019-08-11 stsp .It Cm \&[
415 640cd7ff 2022-06-22 mark Reduce diff context by N lines (default: 1).
416 dfc23429 2019-08-11 stsp .It Cm \&]
417 640cd7ff 2022-06-22 mark Increase diff context by N lines (default: 1).
418 2b3e6702 2022-07-20 mark .It Cm <, Comma, K
419 01ca22b1 2020-12-07 stsp If the
420 01ca22b1 2020-12-07 stsp .Cm diff
421 01ca22b1 2020-12-07 stsp view was opened via the
422 01ca22b1 2020-12-07 stsp .Cm log
423 c0f61fa4 2022-07-11 mark view, move to the Nth previous (younger) commit.
424 c0f61fa4 2022-07-11 mark If the diff was opened via the
425 c0f61fa4 2022-07-11 mark .Cm blame
426 c0f61fa4 2022-07-11 mark view, move to the Nth previous line and load the corresponding commit
427 c0f61fa4 2022-07-11 mark (default: 1).
428 2b3e6702 2022-07-20 mark .It Cm >, Full stop, J
429 01ca22b1 2020-12-07 stsp If the
430 01ca22b1 2020-12-07 stsp .Cm diff
431 01ca22b1 2020-12-07 stsp view was opened via the
432 01ca22b1 2020-12-07 stsp .Cm log
433 c0f61fa4 2022-07-11 mark view, move to the Nth next (older) commit.
434 c0f61fa4 2022-07-11 mark If the diff was opened via the
435 c0f61fa4 2022-07-11 mark .Cm blame
436 c0f61fa4 2022-07-11 mark view, move to the Nth next line and load the corresponding commit (default: 1).
437 66dc9065 2020-02-15 stsp .It Cm /
438 0e404f95 2020-11-14 stsp Prompt for a search pattern and start searching for matching lines.
439 66dc9065 2020-02-15 stsp The search pattern is an extended regular expression.
440 66dc9065 2020-02-15 stsp Regular expression syntax is documented in
441 66dc9065 2020-02-15 stsp .Xr re_format 7 .
442 66dc9065 2020-02-15 stsp .It Cm n
443 640cd7ff 2022-06-22 mark Find the Nth next line which matches the current search pattern (default: 1).
444 66dc9065 2020-02-15 stsp .It Cm N
445 640cd7ff 2022-06-22 mark Find the Nth previous line which matches the current search pattern
446 640cd7ff 2022-06-22 mark (default: 1).
447 3dbaef42 2020-11-24 stsp .It Cm w
448 3dbaef42 2020-11-24 stsp Toggle display of whitespace-only changes.
449 917d79a7 2022-07-01 stsp .It Cm A
450 917d79a7 2022-07-01 stsp Change the diff algorithm.
451 41e8d27d 2022-07-03 stsp Supported diff algorithms are Myers (quick and dirty) and
452 41e8d27d 2022-07-03 stsp Patience (slow and tidy).
453 917d79a7 2022-07-01 stsp This is a global setting which also affects the
454 917d79a7 2022-07-01 stsp .Cm blame
455 917d79a7 2022-07-01 stsp view.
456 030916b5 2018-07-12 stsp .El
457 09b5bff8 2020-02-23 naddy .Pp
458 09b5bff8 2020-02-23 naddy The options for
459 09b5bff8 2020-02-23 naddy .Cm tog diff
460 09b5bff8 2020-02-23 naddy are as follows:
461 09b5bff8 2020-02-23 naddy .Bl -tag -width Ds
462 64453f7e 2020-11-21 stsp .It Fl a
463 64453f7e 2020-11-21 stsp Treat file contents as ASCII text even if binary data is detected.
464 3dbaef42 2020-11-24 stsp .It Fl C Ar number
465 3dbaef42 2020-11-24 stsp Set the number of context lines shown in the diff.
466 3dbaef42 2020-11-24 stsp By default, 3 lines of context are shown.
467 09b5bff8 2020-02-23 naddy .It Fl r Ar repository-path
468 09b5bff8 2020-02-23 naddy Use the repository at the specified path.
469 09b5bff8 2020-02-23 naddy If not specified, assume the repository is located at or above the current
470 09b5bff8 2020-02-23 naddy working directory.
471 212b39d1 2020-02-24 naddy If this directory is a
472 212b39d1 2020-02-24 naddy .Xr got 1
473 212b39d1 2020-02-24 naddy work tree, use the repository path associated with this work tree.
474 3dbaef42 2020-11-24 stsp .It Fl w
475 3dbaef42 2020-11-24 stsp Ignore whitespace-only changes.
476 09b5bff8 2020-02-23 naddy .El
477 5fc4f020 2022-08-30 op .It Xo
478 5fc4f020 2022-08-30 op .Cm blame
479 5fc4f020 2022-08-30 op .Op Fl c Ar commit
480 5fc4f020 2022-08-30 op .Op Fl r Ar repository-path
481 5fc4f020 2022-08-30 op .Ar path
482 5fc4f020 2022-08-30 op .Xc
483 030916b5 2018-07-12 stsp Display line-by-line history of a file at the specified path.
484 030916b5 2018-07-12 stsp .Pp
485 030916b5 2018-07-12 stsp The key bindings for
486 030916b5 2018-07-12 stsp .Cm tog blame
487 640cd7ff 2022-06-22 mark are as follows (N denotes optional prefixed count modifier):
488 030916b5 2018-07-12 stsp .Bl -tag -width Ds
489 02ffd0d5 2021-10-17 stsp .It Cm Down-arrow, j, Ctrl-n
490 640cd7ff 2022-06-22 mark Move the selection cursor down N pages (default: 1).
491 02ffd0d5 2021-10-17 stsp .It Cm Up-arrow, k, Ctrl-p
492 640cd7ff 2022-06-22 mark Move the selection cursor up N pages (default: 1).
493 61417565 2022-06-20 mark .It Cm Page-down, Space, Ctrl+f, f
494 640cd7ff 2022-06-22 mark Move the selection cursor down N pages (default: 1).
495 61417565 2022-06-20 mark .It Cm Page-up, Ctrl+b, b
496 640cd7ff 2022-06-22 mark Move the selection cursor up N pages (default: 1).
497 33c3719a 2022-06-15 stsp .It Cm Ctrl+d, d
498 640cd7ff 2022-06-22 mark Move the selection cursor down N half pages (default: 1).
499 33c3719a 2022-06-15 stsp .It Cm Ctrl+u, u
500 640cd7ff 2022-06-22 mark Move the selection cursor up N half pages (default: 1).
501 0b3f028d 2023-01-09 mark .It Cm Home
502 4deef56f 2021-09-02 naddy Move the selection cursor to the first line of the file.
503 0b3f028d 2023-01-09 mark .It Cm End
504 4deef56f 2021-09-02 naddy Move the selection cursor to the last line of the file.
505 0b3f028d 2023-01-09 mark .It Cm g
506 0b3f028d 2023-01-09 mark Move the selection cursor to line N (default: 1).
507 0b3f028d 2023-01-09 mark .It Cm G
508 0b3f028d 2023-01-09 mark Like
509 0b3f028d 2023-01-09 mark .Cm g
510 0b3f028d 2023-01-09 mark but defaults to the last line in the file.
511 030916b5 2018-07-12 stsp .It Cm Enter
512 c0d30c23 2018-10-07 stsp Open a
513 030916b5 2018-07-12 stsp .Cm diff
514 030916b5 2018-07-12 stsp view for the currently selected line's commit.
515 61417565 2022-06-20 mark .It Cm c
516 c0d30c23 2018-10-07 stsp Reload the
517 030916b5 2018-07-12 stsp .Cm blame
518 c0d30c23 2018-10-07 stsp view with the version of the file as found in the currently
519 c0d30c23 2018-10-07 stsp selected line's commit.
520 7a2921f9 2018-07-12 stsp .It Cm p
521 c0d30c23 2018-10-07 stsp Reload the
522 7a2921f9 2018-07-12 stsp .Cm blame
523 c0d30c23 2018-10-07 stsp view with the version of the file as found in the parent commit of the
524 c0d30c23 2018-10-07 stsp currently selected line's commit.
525 61417565 2022-06-20 mark .It Cm C
526 c0d30c23 2018-10-07 stsp Reload the
527 030916b5 2018-07-12 stsp .Cm blame
528 c0d30c23 2018-10-07 stsp view with the previously blamed commit.
529 05f04cdf 2022-07-20 mark .It Cm L
530 05f04cdf 2022-07-20 mark Open a
531 05f04cdf 2022-07-20 mark .Cm log
532 05f04cdf 2022-07-20 mark view for the currently selected annotated line.
533 6c4c42e0 2019-06-24 stsp .It Cm /
534 0e404f95 2020-11-14 stsp Prompt for a search pattern and start searching for matching lines.
535 6c4c42e0 2019-06-24 stsp The search pattern is an extended regular expression.
536 6c4c42e0 2019-06-24 stsp Regular expression syntax is documented in
537 6c4c42e0 2019-06-24 stsp .Xr re_format 7 .
538 6c4c42e0 2019-06-24 stsp .It Cm n
539 640cd7ff 2022-06-22 mark Find the Nth next line which matches the current search pattern (default: 1).
540 6c4c42e0 2019-06-24 stsp .It Cm N
541 640cd7ff 2022-06-22 mark Find the Nth previous line which matches the current search pattern
542 640cd7ff 2022-06-22 mark (default: 1).
543 917d79a7 2022-07-01 stsp .It Cm A
544 917d79a7 2022-07-01 stsp Change the diff algorithm.
545 41e8d27d 2022-07-03 stsp Supported diff algorithms are Myers (quick and dirty) and
546 41e8d27d 2022-07-03 stsp Patience (slow and tidy).
547 917d79a7 2022-07-01 stsp This is a global setting which also affects the
548 917d79a7 2022-07-01 stsp .Cm diff
549 917d79a7 2022-07-01 stsp view.
550 030916b5 2018-07-12 stsp .El
551 030916b5 2018-07-12 stsp .Pp
552 030916b5 2018-07-12 stsp The options for
553 030916b5 2018-07-12 stsp .Cm tog blame
554 030916b5 2018-07-12 stsp are as follows:
555 030916b5 2018-07-12 stsp .Bl -tag -width Ds
556 030916b5 2018-07-12 stsp .It Fl c Ar commit
557 030916b5 2018-07-12 stsp Start traversing history at the specified
558 030916b5 2018-07-12 stsp .Ar commit .
559 c4df265e 2023-07-19 mark The expected argument is a commit ID SHA1 hash, or a reference name or keyword
560 c4df265e 2023-07-19 mark which will be resolved to a commit ID.
561 0db75f06 2019-07-07 stsp An abbreviated hash argument will be expanded to a full SHA1 hash
562 0db75f06 2019-07-07 stsp automatically, provided the abbreviation is unique.
563 c4df265e 2023-07-19 mark The keywords
564 c4df265e 2023-07-19 mark .Qq :base
565 c4df265e 2023-07-19 mark and
566 c4df265e 2023-07-19 mark .Qq :head
567 c4df265e 2023-07-19 mark resolve to the work tree's base commit and branch head, respectively.
568 c4df265e 2023-07-19 mark The former is only valid if invoked in a work tree, while the latter will
569 c4df265e 2023-07-19 mark resolve to the tip of the work tree's current branch if invoked in a
570 c4df265e 2023-07-19 mark work tree, otherwise it will resolve to the repository's HEAD reference.
571 c4df265e 2023-07-19 mark Keywords and references may be appended with
572 c4df265e 2023-07-19 mark .Qq :+
573 c4df265e 2023-07-19 mark or
574 c4df265e 2023-07-19 mark .Qq :-
575 c4df265e 2023-07-19 mark modifiers and an optional integer N to denote the
576 c4df265e 2023-07-19 mark Nth descendant or antecedent by first parent traversal, respectively;
577 c4df265e 2023-07-19 mark for example,
578 c4df265e 2023-07-19 mark .Sy :head:-2
579 c4df265e 2023-07-19 mark denotes the work tree branch head's 2nd generation ancestor, and
580 c4df265e 2023-07-19 mark .Sy :base:+4
581 c4df265e 2023-07-19 mark denotes the 4th generation descendant of the work tree's base commit.
582 c4df265e 2023-07-19 mark Similarly,
583 c4df265e 2023-07-19 mark .Sy foobar:+3
584 c4df265e 2023-07-19 mark will denote the 3rd generation descendant of the commit resolved by the
585 c4df265e 2023-07-19 mark .Qq foobar
586 c4df265e 2023-07-19 mark reference.
587 c4df265e 2023-07-19 mark A
588 c4df265e 2023-07-19 mark .Qq :+
589 c4df265e 2023-07-19 mark or
590 c4df265e 2023-07-19 mark .Qq :-
591 c4df265e 2023-07-19 mark modifier without a trailing integer has an implicit
592 c4df265e 2023-07-19 mark .Qq 1
593 c4df265e 2023-07-19 mark appended
594 c4df265e 2023-07-19 mark .Po e.g.,
595 c4df265e 2023-07-19 mark .Sy :base:+
596 c4df265e 2023-07-19 mark is equivalent to
597 c4df265e 2023-07-19 mark .Sy :base:+1
598 c4df265e 2023-07-19 mark .Pc .
599 69069811 2018-08-02 stsp .It Fl r Ar repository-path
600 69069811 2018-08-02 stsp Use the repository at the specified path.
601 69069811 2018-08-02 stsp If not specified, assume the repository is located at or above the current
602 69069811 2018-08-02 stsp working directory.
603 212b39d1 2020-02-24 naddy If this directory is a
604 212b39d1 2020-02-24 naddy .Xr got 1
605 212b39d1 2020-02-24 naddy work tree, use the repository path associated with this work tree.
606 030916b5 2018-07-12 stsp .El
607 5fc4f020 2022-08-30 op .It Xo
608 5fc4f020 2022-08-30 op .Cm tree
609 5fc4f020 2022-08-30 op .Op Fl c Ar commit
610 5fc4f020 2022-08-30 op .Op Fl r Ar repository-path
611 5fc4f020 2022-08-30 op .Op Ar path
612 5fc4f020 2022-08-30 op .Xc
613 030916b5 2018-07-12 stsp Display the repository tree.
614 55cccc34 2020-02-20 stsp If a
615 55cccc34 2020-02-20 stsp .Ar path
616 55cccc34 2020-02-20 stsp is specified, show tree entries at this path.
617 030916b5 2018-07-12 stsp .Pp
618 848d6979 2019-08-12 stsp Displayed tree entries may carry one of the following trailing annotations:
619 848d6979 2019-08-12 stsp .Bl -column YXZ description
620 848d6979 2019-08-12 stsp .It @ Ta entry is a symbolic link
621 848d6979 2019-08-12 stsp .It / Ta entry is a directory
622 848d6979 2019-08-12 stsp .It * Ta entry is an executable file
623 63c5ca5d 2019-08-24 stsp .It $ Ta entry is a Git submodule
624 848d6979 2019-08-12 stsp .El
625 0d6c6ee3 2020-05-20 stsp .Pp
626 0d6c6ee3 2020-05-20 stsp Symbolic link entries are also annotated with the target path of the link.
627 848d6979 2019-08-12 stsp .Pp
628 030916b5 2018-07-12 stsp The key bindings for
629 030916b5 2018-07-12 stsp .Cm tog tree
630 640cd7ff 2022-06-22 mark are as follows (N denotes optional prefixed count modifier):
631 030916b5 2018-07-12 stsp .Bl -tag -width Ds
632 02ffd0d5 2021-10-17 stsp .It Cm Down-arrow, j, Ctrl-n
633 640cd7ff 2022-06-22 mark Move the selection cursor down N lines (default: 1).
634 02ffd0d5 2021-10-17 stsp .It Cm Up-arrow, k, Ctrl-p
635 640cd7ff 2022-06-22 mark Move the selection cursor up N lines (default: 1).
636 48bb96f0 2022-06-20 naddy .It Cm Page-down, Space, Ctrl+f, f
637 640cd7ff 2022-06-22 mark Move the selection cursor down N pages (default: 1).
638 61417565 2022-06-20 mark .It Cm Page-up, Ctrl+b, b
639 640cd7ff 2022-06-22 mark Move the selection cursor up N pages (default: 1).
640 33c3719a 2022-06-15 stsp .It Cm Ctrl+d, d
641 640cd7ff 2022-06-22 mark Move the selection cursor down N half pages (default: 1).
642 33c3719a 2022-06-15 stsp .It Cm Ctrl+u, u
643 640cd7ff 2022-06-22 mark Move the selection cursor up N half pages (default: 1).
644 0b3f028d 2023-01-09 mark .It Cm Home, =
645 e4526bf5 2021-09-03 naddy Move the selection cursor to the first entry.
646 0b3f028d 2023-01-09 mark .It Cm End, *
647 e4526bf5 2021-09-03 naddy Move the selection cursor to the last entry.
648 0b3f028d 2023-01-09 mark .It Cm g
649 0b3f028d 2023-01-09 mark Move the selection cursor to entry N (default: 1).
650 0b3f028d 2023-01-09 mark .It Cm G
651 0b3f028d 2023-01-09 mark Like
652 0b3f028d 2023-01-09 mark .Cm g
653 0b3f028d 2023-01-09 mark but defaults to the last entry.
654 030916b5 2018-07-12 stsp .It Cm Enter
655 030916b5 2018-07-12 stsp Enter the currently selected directory, or switch to the
656 030916b5 2018-07-12 stsp .Cm blame
657 030916b5 2018-07-12 stsp view for the currently selected file.
658 5e98fb33 2022-07-22 mark .It Cm L
659 c0d30c23 2018-10-07 stsp Open a
660 69efd4c4 2018-07-18 stsp .Cm log
661 69efd4c4 2018-07-18 stsp view for the currently selected tree entry.
662 5e98fb33 2022-07-22 mark .It Cm R
663 152c1c93 2020-11-29 stsp Open a
664 152c1c93 2020-11-29 stsp .Cm ref
665 152c1c93 2020-11-29 stsp view listing all references in the repository.
666 152c1c93 2020-11-29 stsp This can then be used to open a new
667 152c1c93 2020-11-29 stsp .Cm tree
668 152c1c93 2020-11-29 stsp view for arbitrary branches and tags.
669 7837eeac 2018-09-24 stsp .It Cm Backspace
670 640cd7ff 2022-06-22 mark Move back to the Nth parent directory (default: 1).
671 030916b5 2018-07-12 stsp .It Cm i
672 c0d30c23 2018-10-07 stsp Show object IDs for all objects displayed in the
673 030916b5 2018-07-12 stsp .Cm tree
674 030916b5 2018-07-12 stsp view.
675 4eec20aa 2019-06-22 stsp .It Cm /
676 4eec20aa 2019-06-22 stsp Prompt for a search pattern and start searching for matching tree entries.
677 4eec20aa 2019-06-22 stsp The search pattern is an extended regular expression which is matched
678 4eec20aa 2019-06-22 stsp against the tree entry's name.
679 4eec20aa 2019-06-22 stsp Regular expression syntax is documented in
680 4eec20aa 2019-06-22 stsp .Xr re_format 7 .
681 4eec20aa 2019-06-22 stsp .It Cm n
682 640cd7ff 2022-06-22 mark Find the Nth next tree entry which matches the current search pattern
683 640cd7ff 2022-06-22 mark (default: 1).
684 4eec20aa 2019-06-22 stsp .It Cm N
685 640cd7ff 2022-06-22 mark Find the Nth previous tree entry which matches the current search pattern
686 640cd7ff 2022-06-22 mark (default: 1).
687 030916b5 2018-07-12 stsp .El
688 030916b5 2018-07-12 stsp .Pp
689 030916b5 2018-07-12 stsp The options for
690 030916b5 2018-07-12 stsp .Cm tog tree
691 030916b5 2018-07-12 stsp are as follows:
692 030916b5 2018-07-12 stsp .Bl -tag -width Ds
693 030916b5 2018-07-12 stsp .It Fl c Ar commit
694 030916b5 2018-07-12 stsp Start traversing history at the specified
695 030916b5 2018-07-12 stsp .Ar commit .
696 c4df265e 2023-07-19 mark The expected argument is a commit ID SHA1 hash, or a reference name or keyword
697 c4df265e 2023-07-19 mark which will be resolved to a commit ID.
698 0db75f06 2019-07-07 stsp An abbreviated hash argument will be expanded to a full SHA1 hash
699 0db75f06 2019-07-07 stsp automatically, provided the abbreviation is unique.
700 c4df265e 2023-07-19 mark The keywords
701 c4df265e 2023-07-19 mark .Qq :base
702 c4df265e 2023-07-19 mark and
703 c4df265e 2023-07-19 mark .Qq :head
704 c4df265e 2023-07-19 mark resolve to the work tree's base commit and branch head, respectively.
705 c4df265e 2023-07-19 mark The former is only valid if invoked in a work tree, while the latter will
706 c4df265e 2023-07-19 mark resolve to the tip of the work tree's current branch if invoked in a
707 c4df265e 2023-07-19 mark work tree, otherwise it will resolve to the repository's HEAD reference.
708 c4df265e 2023-07-19 mark Keywords and references may be appended with
709 c4df265e 2023-07-19 mark .Qq :+
710 c4df265e 2023-07-19 mark or
711 c4df265e 2023-07-19 mark .Qq :-
712 c4df265e 2023-07-19 mark modifiers and an optional integer N to denote the
713 c4df265e 2023-07-19 mark Nth descendant or antecedent by first parent traversal, respectively;
714 c4df265e 2023-07-19 mark for example,
715 c4df265e 2023-07-19 mark .Sy :head:-2
716 c4df265e 2023-07-19 mark denotes the work tree branch head's 2nd generation ancestor, and
717 c4df265e 2023-07-19 mark .Sy :base:+4
718 c4df265e 2023-07-19 mark denotes the 4th generation descendant of the work tree's base commit.
719 c4df265e 2023-07-19 mark Similarly,
720 c4df265e 2023-07-19 mark .Sy foobar:+3
721 c4df265e 2023-07-19 mark will denote the 3rd generation descendant of the commit resolved by the
722 c4df265e 2023-07-19 mark .Qq foobar
723 c4df265e 2023-07-19 mark reference.
724 c4df265e 2023-07-19 mark A
725 c4df265e 2023-07-19 mark .Qq :+
726 c4df265e 2023-07-19 mark or
727 c4df265e 2023-07-19 mark .Qq :-
728 c4df265e 2023-07-19 mark modifier without a trailing integer has an implicit
729 c4df265e 2023-07-19 mark .Qq 1
730 c4df265e 2023-07-19 mark appended
731 c4df265e 2023-07-19 mark .Po e.g.,
732 c4df265e 2023-07-19 mark .Sy :base:+
733 c4df265e 2023-07-19 mark is equivalent to
734 c4df265e 2023-07-19 mark .Sy :base:+1
735 c4df265e 2023-07-19 mark .Pc .
736 38cb327b 2020-11-24 stsp .It Fl r Ar repository-path
737 38cb327b 2020-11-24 stsp Use the repository at the specified path.
738 38cb327b 2020-11-24 stsp If not specified, assume the repository is located at or above the current
739 38cb327b 2020-11-24 stsp working directory.
740 38cb327b 2020-11-24 stsp If this directory is a
741 38cb327b 2020-11-24 stsp .Xr got 1
742 38cb327b 2020-11-24 stsp work tree, use the repository path associated with this work tree.
743 38cb327b 2020-11-24 stsp .El
744 5fc4f020 2022-08-30 op .It Cm ref Op Fl r Ar repository-path
745 38cb327b 2020-11-24 stsp Display references in the repository.
746 38cb327b 2020-11-24 stsp .Pp
747 38cb327b 2020-11-24 stsp The key bindings for
748 38cb327b 2020-11-24 stsp .Cm tog ref
749 640cd7ff 2022-06-22 mark are as follows (N denotes optional prefixed count modifier):
750 38cb327b 2020-11-24 stsp .Bl -tag -width Ds
751 02ffd0d5 2021-10-17 stsp .It Cm Down-arrow, j, Ctrl-n
752 640cd7ff 2022-06-22 mark Move the selection cursor down N lines (default: 1).
753 02ffd0d5 2021-10-17 stsp .It Cm Up-arrow, k, Ctrl-p
754 640cd7ff 2022-06-22 mark Move the selection cursor up N lines (default: 1).
755 48bb96f0 2022-06-20 naddy .It Cm Page-down, Space, Ctrl+f, f
756 640cd7ff 2022-06-22 mark Move the selection cursor down N pages (default: 1).
757 61417565 2022-06-20 mark .It Cm Page-up, Ctrl+b, b
758 640cd7ff 2022-06-22 mark Move the selection cursor up N pages (default: 1).
759 33c3719a 2022-06-15 stsp .It Cm Ctrl+d, d
760 640cd7ff 2022-06-22 mark Move the selection cursor down N half pages (default: 1).
761 33c3719a 2022-06-15 stsp .It Cm Ctrl+u, u
762 640cd7ff 2022-06-22 mark Move the selection cursor up N half pages (default: 1).
763 0b3f028d 2023-01-09 mark .It Cm Home, =
764 e4526bf5 2021-09-03 naddy Move the selection cursor to the first reference.
765 0b3f028d 2023-01-09 mark .It Cm End, *
766 e4526bf5 2021-09-03 naddy Move the selection cursor to the last reference.
767 0b3f028d 2023-01-09 mark .It Cm g
768 0b3f028d 2023-01-09 mark Move the selection cursor to reference N (default: 1).
769 0b3f028d 2023-01-09 mark .It Cm G
770 0b3f028d 2023-01-09 mark Like
771 0b3f028d 2023-01-09 mark .Cm g
772 0b3f028d 2023-01-09 mark but defaults to the last reference.
773 38cb327b 2020-11-24 stsp .It Cm Enter
774 01ca22b1 2020-12-07 stsp Open a
775 01ca22b1 2020-12-07 stsp .Cm log
776 01ca22b1 2020-12-07 stsp view which begins traversing history at the commit resolved via the
777 38cb327b 2020-11-24 stsp currently selected reference.
778 5e98fb33 2022-07-22 mark .It Cm T
779 c42c9805 2020-11-24 stsp Open a
780 c42c9805 2020-11-24 stsp .Cm tree
781 c42c9805 2020-11-24 stsp view showing the tree resolved via the currently selected reference.
782 38cb327b 2020-11-24 stsp .It Cm i
783 38cb327b 2020-11-24 stsp Show object IDs for all non-symbolic references displayed in the
784 38cb327b 2020-11-24 stsp .Cm ref
785 38cb327b 2020-11-24 stsp view.
786 b4996bee 2022-06-16 stsp .It Cm m
787 b4996bee 2022-06-16 stsp Show last modified date of each displayed reference.
788 07a065fe 2021-11-20 stsp .It Cm o
789 7f66531d 2021-11-16 stsp Toggle display order of references between sort by name and sort by timestamp.
790 38cb327b 2020-11-24 stsp .It Cm /
791 38cb327b 2020-11-24 stsp Prompt for a search pattern and start searching for matching references.
792 38cb327b 2020-11-24 stsp The search pattern is an extended regular expression which is matched
793 38cb327b 2020-11-24 stsp against absolute reference names.
794 38cb327b 2020-11-24 stsp Regular expression syntax is documented in
795 38cb327b 2020-11-24 stsp .Xr re_format 7 .
796 38cb327b 2020-11-24 stsp .It Cm n
797 640cd7ff 2022-06-22 mark Find the Nth next reference which matches the current search pattern
798 640cd7ff 2022-06-22 mark (default: 1).
799 38cb327b 2020-11-24 stsp .It Cm N
800 640cd7ff 2022-06-22 mark Find the Nth previous reference which matches the current search pattern
801 640cd7ff 2022-06-22 mark (default: 1).
802 38cb327b 2020-11-24 stsp .It Cm Ctrl+l
803 38cb327b 2020-11-24 stsp Reload the list of references displayed by the
804 38cb327b 2020-11-24 stsp .Cm ref
805 38cb327b 2020-11-24 stsp view.
806 38cb327b 2020-11-24 stsp .El
807 38cb327b 2020-11-24 stsp .Pp
808 38cb327b 2020-11-24 stsp The options for
809 38cb327b 2020-11-24 stsp .Cm tog ref
810 38cb327b 2020-11-24 stsp are as follows:
811 38cb327b 2020-11-24 stsp .Bl -tag -width Ds
812 74283ab8 2020-02-07 stsp .It Fl r Ar repository-path
813 74283ab8 2020-02-07 stsp Use the repository at the specified path.
814 74283ab8 2020-02-07 stsp If not specified, assume the repository is located at or above the current
815 74283ab8 2020-02-07 stsp working directory.
816 74283ab8 2020-02-07 stsp If this directory is a
817 74283ab8 2020-02-07 stsp .Xr got 1
818 74283ab8 2020-02-07 stsp work tree, use the repository path associated with this work tree.
819 030916b5 2018-07-12 stsp .El
820 030916b5 2018-07-12 stsp .El
821 6d17833f 2019-11-08 stsp .Sh ENVIRONMENT
822 d2366e29 2022-07-07 mark .Bl -tag -width TOG_VIEW_SPLIT_MODE
823 6d17833f 2019-11-08 stsp .It Ev TOG_COLORS
824 6d17833f 2019-11-08 stsp .Nm
825 6d17833f 2019-11-08 stsp shows colorized output if this variable is set to a non-empty value.
826 6d17833f 2019-11-08 stsp The default color scheme can be modified by setting the environment
827 6d17833f 2019-11-08 stsp variables documented below.
828 6d17833f 2019-11-08 stsp The colors available in color schemes are
829 6d17833f 2019-11-08 stsp .Dq black ,
830 6d17833f 2019-11-08 stsp .Dq red ,
831 6d17833f 2019-11-08 stsp .Dq green ,
832 6d17833f 2019-11-08 stsp .Dq yellow ,
833 6d17833f 2019-11-08 stsp .Dq blue ,
834 93a300b2 2021-08-26 stsp .Dq magenta ,
835 1d7fe5cd 2019-11-08 stsp .Dq cyan ,
836 6d17833f 2019-11-08 stsp and
837 1d7fe5cd 2019-11-08 stsp .Dq default
838 1d7fe5cd 2019-11-08 stsp which maps to the terminal's default foreground color.
839 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_AUTHOR
840 7713cc5e 2023-01-20 op The color used to mark up author information.
841 6d17833f 2019-11-08 stsp If not set, the default value
842 7713cc5e 2023-01-20 op .Dq cyan
843 6d17833f 2019-11-08 stsp is used.
844 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_COMMIT
845 7713cc5e 2023-01-20 op The color used to mark up commit IDs.
846 6d17833f 2019-11-08 stsp If not set, the default value
847 7713cc5e 2023-01-20 op .Dq green
848 6d17833f 2019-11-08 stsp is used.
849 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_DATE
850 7713cc5e 2023-01-20 op The color used to mark up date information.
851 7713cc5e 2023-01-20 op If not set, the default value
852 7713cc5e 2023-01-20 op .Dq yellow
853 7713cc5e 2023-01-20 op is used.
854 6d17833f 2019-11-08 stsp .It Ev TOG_COLOR_DIFF_CHUNK_HEADER
855 6d17833f 2019-11-08 stsp The color used to mark up chunk header lines in diffs.
856 6d17833f 2019-11-08 stsp If not set, the default value
857 6d17833f 2019-11-08 stsp .Dq yellow
858 6d17833f 2019-11-08 stsp is used.
859 6d17833f 2019-11-08 stsp .It Ev TOG_COLOR_DIFF_META
860 6d17833f 2019-11-08 stsp The color used to mark up meta data in diffs.
861 c0b01bdb 2019-11-08 stsp If not set, the default value
862 c0b01bdb 2019-11-08 stsp .Dq green
863 c0b01bdb 2019-11-08 stsp is used.
864 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_DIFF_MINUS
865 7713cc5e 2023-01-20 op The color used to mark up removed lines in diffs.
866 c0b01bdb 2019-11-08 stsp If not set, the default value
867 c0b01bdb 2019-11-08 stsp .Dq magenta
868 c0b01bdb 2019-11-08 stsp is used.
869 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_DIFF_PLUS
870 7713cc5e 2023-01-20 op The color used to mark up added lines in diffs.
871 c0b01bdb 2019-11-08 stsp If not set, the default value
872 91b8c405 2020-01-25 stsp .Dq cyan
873 c0b01bdb 2019-11-08 stsp is used.
874 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_REFS_BACKUP
875 7713cc5e 2023-01-20 op The color used to mark up references in the
876 7713cc5e 2023-01-20 op .Dq refs/got/backup/
877 7713cc5e 2023-01-20 op namespace.
878 11b20872 2019-11-08 stsp If not set, the default value
879 11b20872 2019-11-08 stsp .Dq cyan
880 11b20872 2019-11-08 stsp is used.
881 38cb327b 2020-11-24 stsp .It Ev TOG_COLOR_REFS_HEADS
882 38cb327b 2020-11-24 stsp The color used to mark up references in the
883 38cb327b 2020-11-24 stsp .Dq refs/heads/
884 38cb327b 2020-11-24 stsp namespace.
885 38cb327b 2020-11-24 stsp If not set, the default value
886 38cb327b 2020-11-24 stsp .Dq green
887 38cb327b 2020-11-24 stsp is used.
888 38cb327b 2020-11-24 stsp .It Ev TOG_COLOR_REFS_REMOTES
889 38cb327b 2020-11-24 stsp The color used to mark up references in the
890 38cb327b 2020-11-24 stsp .Dq refs/remotes/
891 38cb327b 2020-11-24 stsp namespace.
892 38cb327b 2020-11-24 stsp If not set, the default value
893 38cb327b 2020-11-24 stsp .Dq yellow
894 38cb327b 2020-11-24 stsp is used.
895 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_REFS_TAGS
896 cc488aa7 2022-01-23 stsp The color used to mark up references in the
897 7713cc5e 2023-01-20 op .Dq refs/tags/
898 cc488aa7 2022-01-23 stsp namespace.
899 cc488aa7 2022-01-23 stsp If not set, the default value
900 7713cc5e 2023-01-20 op .Dq magenta
901 7713cc5e 2023-01-20 op is used.
902 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_TREE_DIRECTORY
903 7713cc5e 2023-01-20 op The color used to mark up directory tree entries.
904 7713cc5e 2023-01-20 op If not set, the default value
905 cc488aa7 2022-01-23 stsp .Dq cyan
906 cc488aa7 2022-01-23 stsp is used.
907 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_TREE_EXECUTABLE
908 7713cc5e 2023-01-20 op The color used to mark up executable file tree entries.
909 7713cc5e 2023-01-20 op If not set, the default value
910 7713cc5e 2023-01-20 op .Dq green
911 7713cc5e 2023-01-20 op is used.
912 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_TREE_SUBMODULE
913 7713cc5e 2023-01-20 op The color used to mark up submodule tree entries.
914 7713cc5e 2023-01-20 op If not set, the default value
915 7713cc5e 2023-01-20 op .Dq magenta
916 7713cc5e 2023-01-20 op is used.
917 7713cc5e 2023-01-20 op .It Ev TOG_COLOR_TREE_SYMLINK
918 7713cc5e 2023-01-20 op The color used to mark up symbolic link tree entries.
919 7713cc5e 2023-01-20 op If not set, the default value
920 7713cc5e 2023-01-20 op .Dq magenta
921 7713cc5e 2023-01-20 op is used.
922 7713cc5e 2023-01-20 op .It Ev TOG_DIFF_ALGORITHM
923 7713cc5e 2023-01-20 op Determines the default diff algorithm used by
924 7713cc5e 2023-01-20 op .Nm .
925 7713cc5e 2023-01-20 op Supported diff algorithms are Myers (quick and dirty) and
926 7713cc5e 2023-01-20 op Patience (slow and tidy).
927 7713cc5e 2023-01-20 op Valid values for
928 7713cc5e 2023-01-20 op .Ev TOG_DIFF_ALGORITHM
929 7713cc5e 2023-01-20 op are
930 7713cc5e 2023-01-20 op .Dq patience
931 7713cc5e 2023-01-20 op and
932 7713cc5e 2023-01-20 op .Dq myers .
933 7713cc5e 2023-01-20 op If unset, the Myers diff algorithm will be used by default.
934 7713cc5e 2023-01-20 op .It Ev TOG_VIEW_SPLIT_MODE
935 7713cc5e 2023-01-20 op Determines the default layout of split-screen views.
936 7713cc5e 2023-01-20 op If set to
937 7713cc5e 2023-01-20 op .Dq h
938 7713cc5e 2023-01-20 op or
939 7713cc5e 2023-01-20 op .Dq H ,
940 7713cc5e 2023-01-20 op .Nm
941 7713cc5e 2023-01-20 op will use horizontal split by default.
942 7713cc5e 2023-01-20 op Otherwise, vertical split will be used.
943 7713cc5e 2023-01-20 op The
944 7713cc5e 2023-01-20 op .Cm S
945 7713cc5e 2023-01-20 op key can be used to switch between vertical and horizontal split layout
946 7713cc5e 2023-01-20 op at run-time.
947 6d17833f 2019-11-08 stsp .El
948 030916b5 2018-07-12 stsp .Sh EXIT STATUS
949 030916b5 2018-07-12 stsp .Ex -std tog
950 030916b5 2018-07-12 stsp .Sh SEE ALSO
951 56b9a4ca 2019-06-21 stsp .Xr got 1 ,
952 56b9a4ca 2019-06-21 stsp .Xr git-repository 5 ,
953 56b9a4ca 2019-06-21 stsp .Xr re_format 7
954 030916b5 2018-07-12 stsp .Sh AUTHORS
955 8ca658b9 2022-07-05 stsp .An Christian Weisgerber Aq Mt naddy@openbsd.org
956 8ca658b9 2022-07-05 stsp .An Josh Rickmar Aq Mt jrick@zettaport.com
957 bc3056e3 2019-08-18 stsp .An Joshua Stein Aq Mt jcs@openbsd.org
958 8ca658b9 2022-07-05 stsp .An Mark Jamsek Aq Mt mark@jamsek.dev
959 8ca658b9 2022-07-05 stsp .An Martin Pieuchot Aq Mt mpi@openbsd.org
960 8ca658b9 2022-07-05 stsp .An Omar Polo Aq Mt op@openbsd.org
961 8ca658b9 2022-07-05 stsp .An Stefan Sperling Aq Mt stsp@openbsd.org
962 8ca658b9 2022-07-05 stsp .An Klemens Nanni Aq Mt kn@openbsd.org