How To Get GIT Working Behind A Firewall [Using A SOCKS Proxy]

Some GIT servers support the http protocol but some don't and if you're behind a firewall like me (at work - so I don't have control over it and most ports are blocked) you basically can't access GIT.