Dennis Kaarsemaker [off-list ref] writes:
I'm not doing that in non-bare repositories, neither do I use it for
pushing. It's for a continuous integration system, which never has any
locally created branches or commits, but does integrate things from
different remotes in some cases.
Perhaps then
[remote "origin"]
url = somewhere
fetch = +refs/heads/*:refs/heads/*
fetch = +refs/tags/*:refs/tags/*
[remote "another"]
url = somewhere-else
fetch = +refs/heads/*:refs/remotes/another/*
[remote "third"]
url = third-place
fetch = +refs/heads/*:refs/remotes/third/*
would be sufficient? You may not even need tags, but that is an
independent issue.