Very cool discovery! I never even considered the idea that you could have several URLs for a remote.

As you mentioned that this kind of mixed remote would make it "impossible" (without adding remotes) to push to only one of the URLs, I though I should mention something that probably not everyone knows:

You don't need to set up a remote to fetch or push. You can use an explicit URL instead of a remote name:

git push ssh://my.server/~/git/myrepo HEAD:master

In fact, because I forget what the various options are for managing references/branches, I often use this to remove a reference in the local repository.

git push . :refs/heads/whatever_branch