Commit 030916b54bfd04eea2d42ea496a643df1bd4bf3b

Stefan Sperling 2018-07-12T22:11:03

man page for tog

diff --git a/tog/tog.1 b/tog/tog.1
new file mode 100644
index 0000000..4a9bef0
--- /dev/null
+++ b/tog/tog.1
@@ -0,0 +1,192 @@
+.\"
+.\" Copyright (c) 2018 Stefan Sperling
+.\"
+.\" 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.
+.\"
+.Dd $Mdocdate$
+.Dt TOG 1
+.Os
+.Sh NAME
+.Nm tog
+.Nd git repository browser
+.Sh SYNOPSIS
+.Nm
+.Ar command
+.Op Fl h
+.Op Ar arg ...
+.Sh DESCRIPTION
+.Nm
+is an interactive read-only browser for git repositories.
+This repository format is described in
+.Xr got-repository 5 .
+.Pp
+.Nm
+provides global and command-specific options.
+Global options must preceed the command name, and are as follows:
+.Bl -tag -width tenletters
+.It Fl h
+Display usage information.
+.El
+.Pp
+The commands for
+.Nm
+are as follows:
+.Bl -tag -width blame
+.It Cm log [ Fl c Ar commit ] [ Ar repository-path ]
+Display history of a repository.
+If the
+.Ar repository path
+is omitted, assume the repository is located in the current working directory.
+.Pp
+This command is also executed if no explicit command is specified.
+.Pp
+The key bindings for
+.Cm tog log
+are as follows:
+.Bl -tag -width Ds
+.It Cm Down-arrow, j, Page-down
+Move the selection cursor down.
+.It Cm Up-arrow, k, Page-up
+Move the selection cursor up.
+.It Cm Enter
+Switch to the
+.Cm diff
+view showing file changes made in the currently selected commit.
+.It Cm t
+Switch to the
+.Cm tree
+view showing the tree for the currently selected commit.
+.It Cm q
+Quit the
+.Cm log
+view.
+.El
+.Pp
+The options for
+.Cm tog log
+are as follows:
+.Bl -tag -width Ds
+.It Fl c Ar commit
+Start traversing history at the specified
+.Ar commit .
+The expected argument is the name of a branch or a SHA1 hash which corresponds
+to a commit object.
+.El
+.It Cm diff [ Ar repository-path ] Ar object1 Ar object2
+Display the differences between two objects in the repository.
+Each
+.Ar object
+argument is a SHA1 hash which corresponds to the object.
+Both objects must be of the same type (blobs, trees, or commits).
+If the
+.Ar repository path
+is omitted, use the current working directory.
+.Pp
+The key bindings for
+.Cm tog diff
+are as follows:
+.Bl -tag -width Ds
+.It Cm Down-arrow, j, Page-down, Space, Enter
+Scroll down.
+.It Cm Up-arrow, k, Page-up, Backspace
+Scroll up.
+.It Cm q
+Quit the
+.Cm diff
+view.
+.El
+.It Cm blame [ Fl c Ar commit ] [ Ar repository-path ] Ar path
+Display line-by-line history of a file at the specified path.
+If the
+.Ar repository path
+is omitted, assume the repository is located in the current working directory.
+.Pp
+The key bindings for
+.Cm tog blame
+are as follows:
+.Bl -tag -width Ds
+.It Cm Down-arrow, j, Page-down
+Move the selection cursor down.
+.It Cm Up-arrow, k, Page-up
+Move the selection cursor up.
+.It Cm Enter
+Switch to the
+.Cm diff
+view for the currently selected line's commit.
+.It Cm b
+Show the
+.Cm blame
+view for the version of the file in the currently selected line's commit.
+.It Cm B
+Switch the
+.Cm blame
+view back to the previously blamed commit.
+.It Cm q
+Quit the
+.Cm diff
+view.
+.El
+.Pp
+The options for
+.Cm tog blame
+are as follows:
+.Bl -tag -width Ds
+.It Fl c Ar commit
+Start traversing history at the specified
+.Ar commit .
+The expected argument is the name of a branch or a SHA1 hash which corresponds
+to a commit object.
+.El
+.It Cm tree [ Fl c Ar commit ] [ Ar repository-path ]
+Display the repository tree.
+If the
+.Ar repository path
+is omitted, assume the repository is located in the current working directory.
+.Pp
+The key bindings for
+.Cm tog tree
+are as follows:
+.Bl -tag -width Ds
+.It Cm Down-arrow, j, Page-down
+Move the selection cursor down.
+.It Cm Up-arrow, k, Page-up
+Move the selection cursor up.
+.It Cm Enter
+Enter the currently selected directory, or switch to the
+.Cm blame
+view for the currently selected file.
+.It Cm Backspace
+Move back to the parent directory.
+.It Cm i
+Show the object IDs for all objects displayed in the
+.Cm tree
+view.
+.El
+.Pp
+The options for
+.Cm tog tree
+are as follows:
+.Bl -tag -width Ds
+.It Fl c Ar commit
+Start traversing history at the specified
+.Ar commit .
+The expected argument is the name of a branch or a SHA1 hash which corresponds
+to a commit object.
+.El
+.El
+.Sh EXIT STATUS
+.Ex -std tog
+.Sh SEE ALSO
+.Xr got-repository 5
+.Sh AUTHORS
+.An Stefan Sperling Aq Mt stsp@openbsd.org