#!/usr/bin/env bash # git-shell-commands(5) subcommand: set or show a repo's description as # displayed in cgit. # Run: ssh git@git.kumardamani.net desc [description...] name="${1:-}" case "$name" in ""|*[!a-zA-Z0-9._-]*|*..*) echo "usage: desc [description...]" >&2 exit 1 ;; esac repo="/srv/git/$name.git" if [ ! -d "$repo" ]; then echo "error: no such repo '$name'" >&2 exit 1 fi shift if [ $# -eq 0 ]; then cat "$repo/description" exit 0 fi printf '%s\n' "$*" > "$repo/description" echo "description for '$name':" cat "$repo/description"