git/git-sync

24 lines
497 B
Bash
Executable File

#!/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