example.sh: add index-time.html, list sorted by time, fix reposdir '/' - stagit-gopher - A git gopher frontend. (mirror) HTML git clone git://bitreich.org/stagit-gopher/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/stagit-gopher/ DIR Log DIR Files DIR Refs DIR Tags DIR README DIR LICENSE --- DIR commit fd66a29d3ab2f226bc457cb4b3db63da8dff6bf0 DIR parent 9a781328821c1e37987be5573114a6ff3b6e0ee6 HTML Author: Hiltjo Posthuma <hiltjo@codemadness.org> Date: Fri, 8 Jan 2016 13:39:23 +0100 example.sh: add index-time.html, list sorted by time, fix reposdir '/' Diffstat: M example.sh | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) --- DIR diff --git a/example.sh b/example.sh @@ -14,16 +14,28 @@ set -e -reposdir="/var/www/domains/git.codemadness.nl/home/src/" +reposdir="/var/www/domains/git.codemadness.nl/home/src" curdir=$(pwd) # make index. cd "${reposdir}" -find . -maxdepth 1 -type d | grep -v "^.$" | sort | xargs stagit-index > "${curdir}/index.html" +find . -maxdepth 1 -type d | grep -v "^.$" | sort | xargs stagit-index | + sed 's@<td>Last commit</td>@<td><a href="index-time.html">Last commit</a></td>@g' | \ + sed 's@<td>Name</td>@<td><a href="index.html">Name</a></td>@g' > "${curdir}/index.html" + +# make index (sort by last commit author time). +find . -maxdepth 1 -type d | grep -v "^.$" | while read -r dir; do + d=$(basename "${dir}") + cd "${reposdir}/${d}" + timestamp=$(git show -s --pretty="format:%at" || true) + + printf "%d %s\n" "${timestamp}" "${d}" +done | sort -n -k 1 | cut -f 2- -d ' ' | xargs stagit-index | \ + sed 's@<td>Last commit</td>@<td><a href="index-time.html">Last commit</a></td>@g' | \ + sed 's@<td>Name</td>@<td><a href="index.html">Name</a></td>@g' > "${curdir}/index-time.html" # make files per repo. find . -maxdepth 1 -type d | grep -v "^.$" | sort | while read -r dir; do - cd "${reposdir}" d=$(basename "${dir}") printf "%s..." "${d}" @@ -31,7 +43,7 @@ find . -maxdepth 1 -type d | grep -v "^.$" | sort | while read -r dir; do test -d "${d}" || mkdir -p "${d}" cd "${d}" - stagit "${reposdir}${d}" + stagit "${reposdir}/${d}" printf " done\n"