2009年11月18日水曜日

Proxyが存在するネットワーク上でのgit使用



技術部 藤井 洋祐



※※重要 必ず読んでください※※


下記方法でProxy越えを行った場合、使用する環境、会社によってはネットワーク利用規約違反となり、問題と得ることがあります。規約違反など問題が無いことをネットワーク管理者に確認の上、実施してください。また、当方法を実施し、何らかの問題、損害賠償などが発生した場合、当社は一切の責任を負いません。これらのことを認識頂いた上で、各自の責任において、実施お願いします。



Proxy認証が存在するネットワーク環境で、



repo init -u git://android.git.kernel.org/platform/manifest.git



を使用すると、次のようなエラーが発生する場合があります。



~/mydoroid$ repo init -u git://android.git.kernel.org/platform/manifest.git


Getting repo ...


from git://android.git.kernel.org/tools/repo.git


fatal: Unable to look up android.git.kernel.org (port 9418) (Name or service not known)



下記の方法でそれらを回避することが出来ます。


手順




  1. corkscrewをインストール

  2. Proxyとportの編集

  3. ProxyUserとProxyPass ※Proxy認証が必要な場合

  4. gitコマンドを登録


手順に従って、実際の操作を例として記述します。


1.corkscrewをインストール



# apt-get install corkscrew



2.Proxyとportの編集


任意ディレクトリに任意のファイルを作成。


ここでは、proxy-hoge.shとします。



/usr/local/bin/proxy-hoge.sh



下記のように編集





  1. #!/bin/bash

  2. CORKSCREW=`which corkscrew`

  3. $CORKSCREW proxy.hoge.com 8080 $1 $2


※proxy.hoge.comはProxyサーバー


192.168.0.1のようにIDアドレスでも構いません。


# chmod 755 /usr/local/bin/proxy-hoge.sh



3.ProxyUserとProxyPass ※Proxy認証が必要な場合


Proxy認証が必要な場合があります。


corkscrewのヘルプを見ますと



$ corkscrew --h


corkscrew 2.0 (agroman@agroman.net)


usage: corkscrew <proxyhost> <proxyport> <desthost> <destport> [authfile]



と表示されます。


[authfile]がProxy認証に必要な情報が設定されたFileとなります。


3行目を以下のように変更してください。



$CORKSCREW 192.168.0.1 8080 $1 $2 /usr/local/bin/hoge_auth



Proxy認証情報ファイルの作成



/usr/local/bin/hoge_auth



下記のように編集



<user>:<password>



※Proxyサーバ管理者からIDとパスワードをもらう必要があります。


もらえない場合は、諦めましょう・・・



# chmod 600 /usr/local/bin/hoge_auth



gitコマンドを登録


~/.bashrc


下記を追加



export GIT_PROXY_COMMAND=/usr/local/bin/proxy-hoge.sh



以上で終わりです。





記載されている会社名、および商品名等は、各社の商標または登録商標です。

1 コメント:

  1. 参考にさせてもらいました。
    「WindowsユーザがAndroid標準ライブラリをEclipseで参照できるようになるまで」
    http://trwtnb.blogspot.com/2010/04/windowsandroideclipse.html

    返信削除

Related Posts Plugin for WordPress, Blogger...