レンタルサーバーへのgit導入記録:fatal: Unable to find remote helper for 'https'の対処

More than 1 year has passed since last update.


前書き

XREA でサーバをお借りしたが、gitが入ってなかったので、導入しました。途中いろいろと詰まったので、やったことを記録しておきます。エラーが全て解消されたわけではないのですが、とりあえず使えるようにはなりました。


最初にやったこと「普通にソースを入手して手動コンパイル」

以下は失敗したコマンド。成功?したコマンドは、「原因と修正」を参照

$ wget --no-check-certificate https://www.kernel.org/pub/software/scm/git/git-2.11.0.tar.gz

$ tar zxf git-2.11.0.tar.gz
$ cd git-2.11.0/
$ ./configure --prefix=$HOME/local
$ gmake
$ gmake test
$ gmake install


やっていること


  1. $HOME/local/src にgitのソースを引っ張ってくる

  2. 展開

  3. コンパイル&インストール

最後にgit versionとかして入っていそうだったので、安心してしまいました、、


error箇所

gitを導入した翌日に、github上においてあるvimrc等の設定ファイルをcloneしようとすると次のようなエラーメッセージが表示されました!

$ git clone https://github.com/USERNAME/DIRNAME.git

$ fatal: Unable to find remote helper for 'https'
$ Clone of ‘https://github.com/USERNAME/DIRNAME.git’


原因と修正

色々とググってみたところ、原因は


どうやらcurl-develパッケージが存在しないために、curl をリンクできていないようです。


なので、curl-develを導入

$ wget --no-check-certificate https://curl.haxx.se/download/curl-7.52.1.tar.gz

$ tar zxf curl-7.52.1.tar.gz
$ cd curl-7.52.1
$ ./configure --prefix=$HOME/local
$ gmake
$ gmake install

こっからgitをもう一回コンパイルし直しました!

$ cd $HOME/local/src/git-2.11.0/

$ ./configure --prefix=$HOME/local --with-curl
$ gmake
$ gmake test
$ gmake install


未解決の問題

これで、大丈夫かと思ったのですが、今度はこういうエラーが出るようになりました、、。

$ unable to get local issuer certificate

調べてみると原因はSSL証明書が古いせいっぽいのですが、よく分かりませんでした。ともかく、ca-bundle.crtに新しい証明書を追加すれば良さそう。ということで、ca-bundle.crtを探していたのですが、どこにも見つからなかった( ;∀;)


暫定的対処

仕方なく、今回は以下の暫定的対処でしのいでおります。

$ git config --global http.sslVerify false

ちなみに、お察しの通り、wget するときも当然エラーになるので、こちらは --no-check-certificate オプションで逃げています。さっさと解決して、この気持ち悪い状態を抜けたい、、


疑問

gitを導入するだけで、だいぶ大変だったのですが、途中で色んな疑問がわいたので、ここにメモして後から調べていこうと思います。



  • ./configure とか gmake とか、何となくは分かるけど、何をしているのかをしっかり理解したい


  • makegmake ってどう違うんだ?1

  • curl-develの導入って、要はcurlをlocalにインストールしてるだけなんだけど、それだったら最初から --with-curl オプションを付けてビルドしてればよかった?

  • 普通って、どういうところにインストールするんだろ?ずっと sudo apt とかでやってきたから意識したことが無かった、、

たくさん勉強すべきことがありますね。にゃ~ん


参考資料


更新記録


  1. 1月8日 記事の投稿&細部の修正

  2. 1月8日 markdown修正

  3. 1月9日 markdown修正


注釈





  1. このページ を読んで大体のところは分かりました。が、serverはlinux系のはずなんだけど、どうして gmake が使えたんや??まさか、linux系ではない???