From: Sergey Matveev <stargrave@stargrave.org> Date: Wed, 23 Nov 2022 11:01:24 +0000 (+0300) Subject: Git repositories list generator X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=c968ac7e1f6fd62c0f4bfe5e70b3b3c4abaaca8a;p=dotfiles.git Git repositories list generator --- diff --git a/bin/git-list-gen.sh b/bin/git-list-gen.sh new file mode 100755 index 0000000..e6f8b66 --- /dev/null +++ b/bin/git-list-gen.sh @@ -0,0 +1,23 @@ +#!/bin/sh -e +# Generate list of available git repositories + +cat pre.txt +cat <<EOF +-------------------------------+------------------+--------------------------- +Repository name | Latest change | Description, upstream URLs +-------------------------------+------------------+--------------------------- +EOF + +find . -name '*.git' -maxdepth 1 -mindepth 1 | sort | while read dir ; do + cd $dir + for commit in master main trunk ; do + mtime=`git cat-file -p $commit 2>/dev/null | perl -lane 'print $F[$#F - 1] if /^author/'` + [ -z "$mtime" ] || break + done + [ -z "$mtime" ] || mtime=`date -u -j -f %s $mtime "+%Y-%m-%d %H:%M"` + printf "%-30s | %16s | %s\n" ${dir#./} "$mtime" "`cat description`" + git remote | while read remote ; do + printf "%-30s | %16s | %s\n" "" "" "`git remote get-url $remote`" + done + cd .. +done