Introduction
Introduction Statistics Contact Development Disclaimer Help
tinitial insertion - stagit - static git page generator
git clone git://src.adamsgaard.dk/stagit
Log
Files
Refs
README
LICENSE
---
commit acd240004960dbbce6081b338ee4ed1775acfd1e
Author: Hiltjo Posthuma <[email protected]>
Date: Fri, 4 Dec 2015 16:58:04 +0100
initial insertion
Diffstat:
A README | 1 +
A TODO | 15 +++++++++++++++
A logo.png | 0
A style.css | 23 +++++++++++++++++++++++
A urmoms | 117 +++++++++++++++++++++++++++++…
5 files changed, 156 insertions(+), 0 deletions(-)
---
diff --git a/README b/README
t@@ -0,0 +1 @@
+to use urmom is quite easy...
diff --git a/TODO b/TODO
t@@ -0,0 +1,15 @@
+- be smarter about changes (an existing commit can never change the diff page).
+- add raw link to latest files: raw/file...
+- add summary page?
+- add diffstat to diff page? + and - lines summary?
+- escape < > ' " etc, maybe even use CDATA ?
+- shorter date format for logs.html page.
+- speed up generating files.
+- add stylesheet + 2f30/suckless logo.
+- for files link to the commit but make the filename a link anchor.
+- default to log view (stateless).
+- link to lines in file view! / commit log?
+- show all the tags and branches as list.
+- show commits for all tags and branches???
+- no tarballs, snapshots and such.
+- able to add link to git url: git://url... per project.
diff --git a/logo.png b/logo.png
Binary files differ.
diff --git a/style.css b/style.css
t@@ -0,0 +1,23 @@
+body {
+ font-family: sans-serif;
+ color: #00ff00;
+ background-color: #000;
+}
+
+h1 {
+ vertical-align: middle;
+}
+
+a {
+ color: #00ff00;
+}
+
+hr {
+ color: #00ff00;
+ background-color: #00ff00;
+ border-top: 1px solid #00ff00;
+}
+
+pre {
+ font-family: monospace;
+}
diff --git a/urmoms b/urmoms
t@@ -0,0 +1,117 @@
+#!/bin/sh
+
+# DEBUG
+#set -e -x
+
+baseurl="http://cow.codemadness.org/gitlog/"
+# TODO: read .git/description.
+description="sbase"
+logdir="../gitlog"
+
+header() {
+ cat <<!__EOF__
+<!DOCTYPE HTML>
+<html dir="ltr" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<meta http-equiv="Content-Language" content="en" />
+<title>${description}</title>
+<base href="${baseurl}" />
+<link rel="stylesheet" type="text/css" href="style.css" />
+</head>
+<body>
+<center>
+<h1><img src="logo.png" alt="" /> ${description}</h1>
+<a href="index.html">Tree</a> |
+<a href="log.html">Log</a> |
+<a href="stats.html">Stats</a> |
+<a href="readme.html">README</a> |
+<a href="license.html">LICENSE</a>
+</center>
+<hr/>
+<pre>
+!__EOF__
+}
+
+footer() {
+ cat <<!__EOF__
+</pre>
+<hr/>
+<i><center>Powered by urmoms vibrator</center></i>
+</body>
+</html>
+!__EOF__
+}
+
+mkdir -p "${logdir}"
+firstcommit=$(git log | grep '^commit ' | tail -n 1 | cut -f 2 -d ' ')
+
+# make log per file.
+# TODO: just link to commit/commit? save some space and time?
+git ls-tree -r --name-only master | while read -r file; do
+ test -e "${logdir}/file/${file}.html" && continue
+
+ d=$(dirname "${file}")
+ mkdir -p "${logdir}/file/${d}"
+
+ header > "${logdir}/file/${file}.html"
+ git show "${firstcommit}"...master "${file}" | \
+ sed -E 's@^commit (.*)$@commit <a href="commit/\1.html">\1</a>…
+ footer >> "${logdir}/file/${file}.html"
+done
+
+# make log with all commits.
+header > "${logdir}/log.html"
+printf '<table border="0">' >> "${logdir}/log.html"
+git log --pretty='<tr><td align="right">%cD</td><td><a href="commit/%H.html">%…
+printf '</table>' >> "${logdir}/log.html"
+footer >> "${logdir}/log.html"
+
+# make diff for each commit (all files).
+mkdir -p "${logdir}/commit"
+git log --pretty='%H' | while read -r commit; do
+ test -e "${logdir}/commit/${commit}.html" && continue
+ header > "${logdir}/commit/${commit}.html"
+ git show "${commit}" >> "${logdir}/commit/${commit}.html"
+ footer >> "${logdir}/commit/${commit}.html"
+done
+
+# make index with file links.
+header >> "${logdir}/index.html"
+git ls-tree -r master | sed -E 's@ (.*)$@ <a href="file/\1.html"…
+footer >> "${logdir}/index.html"
+
+# readme page
+# find README file.
+readme=""
+for f in README README.md readme.md; do
+ test -e "${f}" && readme="${f}"
+done
+# make page.
+header > "${logdir}/readme.html"
+if test x"${readme}" != x""; then
+ cat "${readme}" >> "${logdir}/readme.html"
+else
+ echo "no README file found" >> "${logdir}/readme.html"
+fi
+footer >> "${logdir}/readme.html"
+
+# license page
+# find LICENSE file.
+license=""
+for f in LICENSE LICENSE.md; do
+ test -e "${f}" && license="${f}"
+done
+# make page.
+header > "${logdir}/license.html"
+if test x"${readme}" != x""; then
+ cat "${license}" >> "${logdir}/license.html"
+else
+ echo "unknown license" >> "${logdir}/license.html"
+fi
+footer >> "${logdir}/license.html"
+
+# stats (authors).
+header > "${logdir}/stats.html"
+git shortlog -n -s >> "${logdir}/stats.html"
+footer >> "${logdir}/stats.html"
You are viewing proxied material from mx1.adamsgaard.dk. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.