This can be made even simpler by installing all the repos you want to mirror as submodules of the parent directory’s git repository. Instead of many git pull or git fetch, you blast a single git submodule update --recursive --remote and go about your day.
Bonus: This has the added benefit of generating a git history for your automated process if you script in a commit message with a timestamp, making your mirrors reversible.