diff --git a/metatool b/metatool index 36ec435..60109ac 100755 --- a/metatool +++ b/metatool @@ -20,6 +20,15 @@ sync() { while read project do pull $project + done + ls $manyrepos_dir | + while read project + do + check_push $project + done + ls $manyrepos_dir | + while read project + do push $project done } @@ -29,6 +38,14 @@ pull() { git subtree pull --prefix=$project $manyrepos_dir/$project $manyrepos_branch } +check_push() { + project=$1 + ( + cd $manyrepos_dir/$project + [ "`git status --porcelain`" = "" ] + ) +} + push() { project=$1 git subtree push --prefix=$project $manyrepos_dir/$project $metarepo_branch