Help us understand the problem. What is going on with this article?

httpプロキシサーバがわかればGitHubは使える

More than 3 years have passed since last update.

きっかけ

GitHubで、リポジトリのcloneのURLが、気づいたらhttpsにrecommendedをつけるようになっていて、httpsが通る環境ならGitHubが使えるのではと思い、すこし調べてみました。

https推奨なのは?

公式のwhich-remote-url-should-i-useによると、要はfirewallとかで制限されていても、httpsはproxy経由などで使えるでしょう、ということ。GitHubにwebブラウザでアクセスできる環境なら、使えるはずと。

使い方(プロキシなしなら)

プロキシ経由しないでhttps通信してるなら、URLをhttpsのにするだけでOKです。(まず、ありえないでしょうが...)

git clone https://github.com/[user_name]/[repo_name].git

$ git remote -v 
origin  https://github.com/[user_name]/[repo_name].git (fetch)
origin  https://github.com/[user_name]/[repo_name].git (push)

となっていれば、 git push origin master でmasterにpushできます。

この際、GitHubのユーザ名とパスワードでの認証が必要になります。
二段階認証にしていたら、アクセストークンでの認証に変わります。(詳細はこちら

git-credential-cache などで、認証情報を保持していれば、毎回やる必要はなくなるようです。

プロキシが必要なとき

このときは、gitにproxyサーバの設定を追加すれば、上記のやり方が使えるようになります。
ネットワーク管理者などにhttpプロキシサーバの情報を教えてもらいましょう。

git config --global http.proxy http://[proxy_host]:[proxy_port]

プロキシサーバの情報を気軽に聞けないとき

自分のマシンの設定から辿っていきましょう。(ここから先は自己責任でお願いします。)

IEの場合、

  • 自動構成スクリプト (proxy.pac)
  • プロキシサーバー

のいずれかが、レジストリに設定されているでしょう。

HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet Settings の下の

  • AutoConfigURL
  • ProxyServer

proxy.pacの場合、アクセス元とアクセス先に応じたproxyサーバの設定があるはずなので、そこから使えそうなを探しましょう。

ProxyServerの場合は、それをそのまま使えばいいはずです。

(unix系のマシンなら探しやすいかな...?)

やっぱりSSHでやりたいとき

ありがたいことにhttpsのポート443でgithubにssh接続できます。
https://help.github.com/articles/using-ssh-over-the-https-port/

sshにhttpプロキシの設定をつけくわえればOKです。
~/.ssh/config に次を追記します。

Host github.com
    User hoge
    HostName ssh.github.com
    Port 443
    ProxyCommand connect -H [proxy_host]:[proxy_port] %h %p


windowsの場合は、connectに対応するものは、git for Windowsとセットになっているconnect.exeなどにする必要があります。

これで、つぎのようにできれば成功です。(githubに公開鍵を登録して、その秘密鍵で認証しているものとします。)

$ ssh -T git@github.com
Hi username! You've successfully authenticated, but GitHub does not
provide shell access

結論

webブラウザでGitHubにアクセスできるなら、proxyサーバがわかればGitHubは原理的には使えます。
認証が必要なproxyサーバだったり、proxyサーバの情報が秘匿されている場合などは、簡単には使えないですが...

参考サイト

http://blog.engineer-memo.com/2014/07/28/ie-11-%E3%81%AE%E3%83%97%E3%83%AD%E3%82%AD%E3%82%B7%E8%A8%AD%E5%AE%9A%E3%82%92%E5%9F%BA%E6%9C%AC%E8%A8%AD%E5%AE%9A%E3%81%A7%E3%83%AC%E3%82%B8%E3%82%B9%E3%83%88%E3%83%AA%E5%A4%89%E6%9B%B4%E3%81%AB/

https://help.github.com/articles/which-remote-url-should-i-use/

https://help.github.com/articles/using-ssh-over-the-https-port/

http://blogs.technet.com/b/jpieblog/archive/2015/02/09/3644793.aspx

http://cohakim.com/archives/5849

https://mistymagich.wordpress.com/2013/10/07/git-credential-helper%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6http%E8%B6%8A%E3%81%97%E3%81%A7%E8%AA%8D%E8%A8%BC%E3%81%8C%E3%81%8B%E3%81%8B%E3%81%A3%E3%81%A6%E3%81%84%E3%82%8B%E3%83%AA%E3%83%9D%E3%82%B8/

http://ymotongpoo.hatenablog.com/entry/20110325/1301039272

http://qiita.com/usamik26/items/c655abcaeee02ea59695

http://qiita.com/hnakamur/items/cb04882cc69f2d1a7367

http://qiita.com/zaki-yama/items/bfb0c2bef516af58c3fa

n_slender
一応Javaエンジニアです。仕事の関係でPHP、Python、Rubyをやることも。開発環境を構築することもあるので、そのレベルでのインフラネタもたまに。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした