Git Hooks is probably the best way. I'm doing that for a couple of my Git-Repos actually - and it's really working great.
- add a github remote on your sf.net repo (git remote add --mirror github git@github.com:anope/anope.git)
- update your post-update hook to contain things like `git push github --mirror`
may be that helps a bit.
cheers,
Chris