#!/bin/sh clonemissing() { # pull and return if already existing if [ -d "$2"/.git ]; then run cd $VERBOSE_ARG "$2" run git pull $VERBOSE_ARG || echo "$2: failed to pull from remote" return fi # clone $1 to $2 run mkdir -p $VERBOSE_ARG "$2" run git clone $VERBOSE_ARG "$1" "$2" # link files to $3 [ -z "$3" ] && return run mkdir -p $VERBOSE_ARG "$3" run ln -sf $VERBOSE_ARG "$2"/* "$3" }