Using GitHub behind a firewall without SSH access
I really want to use GitHub, but my company has everythi开发者_运维知识库ng locked down. Now, I can only use Tortoise SVN through the HTTP protocol. Can I use GitHub the same way? If so, how?
I think you've always been able to clone github repositories over HTTP, but with the restriction that you couldn't push back to them. However, github have recently introduced the Smart HTTP transport, so now you can also push over HTTPS. This should work fine from behind any firewall. There's more on the Smart HTTP support in this blog post:
https://github.com/blog/642-smart-http-support
To give a short summary - if you click the HTTP button on the "Source" tab of a repository, it'll give you a URL like:
https://mhl@github.com/mhl/unicode-poster.git
If you clone with that URL, it'll prompt you for your github password whenever you need to communicate with the server (e.g. with git clone
, git fetch
, git push
, etc.) However, you can also clone using a URL like:
https://mhl:notactuallymypassword@github.com/mhl/unicode-poster.git
... and you won't need to re-enter your password. (As that blog post mentions, make sure you've got https://
at the start of the URL, and be aware that this means that your github password will be stored in plaintext in your git config, so don't let anyone copy your .git
directory!)
According to https://github.com/blog/92-http-cloning, you can clone from github over http.
Another post in this thread gives a good pointer on pushing.
精彩评论