Maybe I'm missing something, but isn't the .git/config file local to a given working copy? The helper scripts are neat and all, but I don't see anything here that would actually propagate this metadata anywhere.
Yes, it's local-only. This would seem to have a very limited use case.
Even then, you could always just maintain different local/remote branch names and not need the scripts (git push <remote-repo> <local-branch>:<remote-branch> - and of course, you can set that as default).