Hatena::ブログ(Diary)

Android(アンドロイド)情報-ブリリアントサービス RSSフィード


2009-11-17

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

| 16:22 |

技術部 藤井 洋祐

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

下記方法で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

以上で終わりです。

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

トラックバック - http://d.hatena.ne.jp/bs-android/20091117/1258442532