バージョン
- Ubuntu 11.10
- Git 1.7.5.4
問題
git clone https://github.com/path/to.git すると以下エラーが出るようになってしまった。
実際はvimのNeoBundleで新しいプラグインをインストールしようとして起きたんだけど。
warning: remote HEAD refers to nonexistent ref, unable to checkout.
いろいろ調べてみると、以下サイトに全く同じ症状への対応策が。
libcurl3-gnutlsの不具合とpolipo(プロキシ)が原因らしい。
確かに最近polipoセットアップしたし、間違いなさそう。
http://d.hatena.ne.jp/ike-dai/20120216/1329402680
対策
ライブラリをダウンロード、インストールして、gitにプロキシを認識させる。
- http://packages.ubuntu.com/en/precise/i386/libp11-kit0/download
- http://packages.ubuntu.com/en/precise/i386/libgnutls26/download
- http://packages.ubuntu.com/en/precise/i386/libcurl3-gnutls/download
$ sudo dpkg -i libp11-kit0_0.10-1_i386.deb \ libgnutls26_2.12.14-5ubuntu2_i386.deb \ libcurl3-gnutls_7.22.0-3ubuntu2_i386.deb $ git config --global http.proxy "http://127.0.0.1:8123"
これで git clone するととエラーが出た。
p11-kit: couldn't load module: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so: cannot open shared object file: No such file or directory'
symlinkを張って対応する。
$ sudo ln -sf \ /usr/lib/pkcs11/gnome-keyring-pkcs11.so \ /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so
おっけー。