#!/bin/bash function do_git { echo $1 "(Git)" cd $1 git ls-remote --get-url if [ -f .gitmodules ]; then git pull --recurse-submodules else git pull fi cd .. echo } function do_merc { echo $1 "(Mercurial)" cd $1 hg pull -uv cd .. echo } function do_svn { echo $1 "(Subversion)" cd $1 svn info --show-item url svn update cd .. echo } function do_dir { pwd echo $1 echo "-----------------" for i in * do if [ -d $i ]; then if [ -d $i/.git ]; then do_git $i elif [ -d $i/.hg ]; then do_merc $i elif [ -d $i/.svn ]; then do_svn $i else cd $i do_dir $i cd .. fi fi done } if [ -d $HOME/NTCNA ]; then cd $HOME/NTCNA echo "NTCNA Repositories" echo "==================" do_dir . echo "==================" fi