#!/bin/bash set -eu set -o pipefail IFS=$'\n\t' trap 's=$?; echo >&2 "$0: Error on line "$LINENO": $BASH_COMMAND"; exit $s' ERR upstream=https://gitea.philologue.net/philologue/diachron cache_dir="$HOME/.cache/diachron/v1/repositories" cached_repo="$cache_dir/diachron.git" mkdir -p "$cache_dir" if [ -d "$cached_repo" ]; then echo "Updating cached repository..." git -C "$cached_repo" fetch --prune origin else echo "Creating cached repository..." git clone --mirror "$upstream" "$cached_repo" fi