23 lines
456 B
Bash
Executable file
23 lines
456 B
Bash
Executable file
#! /usr/bin/sh
|
|
|
|
REPO_ROOT_FILE="$(systemd-path user-state-private)"/repo-roots/repo-roots
|
|
|
|
list_repos () {
|
|
repo_root=$1
|
|
|
|
find "${repo_root}" -maxdepth 2 -name .git -type d -exec dirname {} \;
|
|
}
|
|
|
|
sync_repo () {
|
|
repo=$1
|
|
|
|
echo git-sync -s "${repo}"
|
|
( cd "${repo}" && git-sync -s sync )
|
|
echo
|
|
}
|
|
|
|
while read -r repo_root; do
|
|
for repo in $(list_repos "${repo_root}"); do
|
|
sync_repo "${repo}"
|
|
done
|
|
done < "${REPO_ROOT_FILE}"
|