]> git.armaanb.net Git - stagit.git/blob - man/stagit.1
do not simplify the history by first-parent
[stagit.git] / man / stagit.1
1 .Dd March 2021
2 .Dt STAGIT 1
3 .Os
4 .Sh NAME
5 .Nm stagit
6 .Nd static git page generator
7 .Sh SYNOPSIS
8 .Nm
9 .Op Fl c Ar cachefile
10 .Op Fl l Ar commits
11 .Op Fl u Ar baseurl
12 .Ar repodir
13 .Sh DESCRIPTION
14 .Nm
15 writes HTML pages for the repository
16 .Ar repodir
17 to the current directory.
18 .Pp
19 The options are as follows:
20 .Bl -tag -width Ds
21 .It Fl c Ar cachefile
22 Cache the entries of the log page up to the point of
23 the last commit.
24 The
25 .Ar cachefile
26 will store the last commit id and the entries in the HTML table.
27 It is up to the user to make sure the state of the
28 .Ar cachefile
29 is in sync with the history of the repository.
30 .It Fl l Ar commits
31 Write a maximum number of
32 .Ar commits
33 to the log.html file only.
34 However the commit files are written as usual.
35 .It Fl u Ar baseurl
36 Base URL to make links in the Atom feeds absolute.
37 For example: "https://git.codemadness.org/stagit/".
38 .El
39 .Pp
40 The options
41 .Fl c
42 and
43 .Fl l
44 cannot be used at the same time.
45 .Pp
46 The following files will be written:
47 .Bl -tag -width Ds
48 .It atom.xml
49 Atom XML feed
50 .It files.html
51 List of files in the latest tree, linking to the file.
52 .It log.html
53 List of commits in reverse chronological applied commit order, each commit
54 links to a page with a diffstat and diff of the commit.
55 .It refs.html
56 Lists references of the repository such as branches and tags.
57 .El
58 .Pp
59 For each entry in HEAD a file will be written in the format:
60 file/filepath.html.
61 This file will contain the textual data of the file prefixed by line numbers.
62 The file will have the string "Binary file" if the data is considered to be
63 non-textual.
64 .Pp
65 For each commit a file will be written in the format:
66 commit/commitid.html.
67 This file will contain the diffstat and diff of the commit.
68 It will write the string "Binary files differ" if the data is considered to
69 be non-textual.
70 Too large diffs will be suppressed and a string
71 "Diff is too large, output suppressed" will be written.
72 .Pp
73 When a commit HTML file exists it won't be overwritten again, note that if
74 you've changed
75 .Nm
76 or changed one of the metadata files of the repository it is recommended to
77 recreate all the output files because it will contain old data.
78 To do this remove the output directory and
79 .Ar cachefile ,
80 then recreate the files.
81 .Pp
82 The basename of the directory is used as the repository name.
83 The suffix ".git" is removed from the basename, this suffix is commonly used
84 for "bare" repos.
85 .Pp
86 The content of the follow files specifies the metadata for each repository:
87 .Bl -tag -width Ds
88 .It .git/description or description (bare repo).
89 description
90 .It .git/owner or owner (bare repo).
91 owner of repository
92 .It .git/url or url (bare repo).
93 primary clone url of the repository, for example: git://git.2f30.org/stagit
94 .El
95 .Pp
96 When a README or LICENSE file exists in HEAD or a .gitmodules submodules file
97 exists in HEAD a direct link in the menu is made.
98 .Pp
99 For changing the style of the page you can use the following files:
100 .Bl -tag -width Ds
101 .It favicon.png
102 favicon image.
103 .It logo.png
104 32x32 logo.
105 .It style.css
106 CSS stylesheet.
107 .El
108 .Sh EXIT STATUS
109 .Ex -std
110 .Sh SEE ALSO
111 .Xr stagit-index 1
112 .Sh AUTHORS
113 .An Hiltjo Posthuma Aq Mt hiltjo@codemadness.org
114 .An Armaan Bhojwani Aq Mt me@armaanb.net