#!/usr/bin/env zsh autoload -U colors && colors git_sync=${GIT_SYNC:-~/.config/git-sync} if [ ! -f "$git_sync" ]; then echo "$fg[yellow]warning:${reset_color} sync list does not exist: $git_sync" exit 0 fi local repos=($(cat $git_sync)) if [ ${#repos[@]} = 0 ]; then echo "$fg[yellow]warning:${reset_color} sync list is empty: $git_sync" exit 0 fi for repo in $repos; do print -P "$fg[cyan]synchronizing: $repo${reset_color}" repo="${repo/#\~/$HOME}" git -C "$repo" fetch done