myrepos is kind of just an elaborated
foreach (@myrepos) loop, but
its configuration and extension in a sort of hybrid between an .ini file
and shell script is quite nice and plenty of other people have found it
I had to write myrepos when I switched from subversion to git, because git's submodules are too limited to meet my needs, and I needed a tool to check out and update many repositories, not necessarily all using the same version control system.
It was called "mr" originally, but I renamed the package because it's impossible to google for "mr". This is the only software I've ever renamed.