Git scripts should fetch once only.
When I run "git-pull-all.sh", it does a git pull on each worktree. Git pull has two parts: a fetch, and a merge. The fetch is slow, but fetches all the branches from origin. The merge part is fast, since it doesn't touch the network.
It would be cool if the pull and merge scripts only did a single fetch of the origin, and then did a bunch of fast-forward-only merges. That way they could run a bit faster.