nsbin/sync-all-repos

40 lines
765 B
Bash
Executable File

#!/bin/sh
set -e
for repo in ~/.ctt \
~/bin \
~/vcs/notes \
~/vcs/nico-dot-cdist \
~/.password-store \
; do
echo $repo
cd $repo
if [ $repo = ~/.password-store ]; then
git checkout master
git add .
git commit -m "updated by $0" || true
git pull
git checkout nico-privat
fi
git add .
git commit -m "updated by $0 on $(hostname)" || true
git pull
git push
done
# Step 2: pull/push all other repos in ~/vcs/
# We cannot commit as we do not know the state, but we
# can ensure everything committed before is pushed out
set +e
for repo in ~/vcs/*; do
echo "$repo"
cd ${repo}
git pull
git push
done