git clone しようとしたら HTTP request failed と怒られたときの解決方法
CentOSのVPSでgit cloneしようとしたら、エラーになった。
# git clone https://hoge.backlog.com/git/HOGE/hoge.git hoge Initialized empty Git repository in /tmp/hoge/.git/ error: The requested URL returned error: 401 Unauthorized while accessing https://hoge.backlog.com/git/HOGE/hoge.git/info/refs fatal: HTTP request failed
いろいろぐぐって対策してみるけど解決できず。
git のバージョンが古いのが原因ぽいことがわかった。
こちらを参考にして git をアップデート。
≫ CentOS6でのgitアップデート(1.7→2.16)
既存gitのアンインストール
# git remove git
git2系がインストールできるrpmを入れる
# wget --no-check-certificate https://dl.iuscommunity.org/pub/ius/stable/CentOS/6/x86_64/ius-release-1.0-15.ius.centos6.noarch.rpm # rpm -Uvh ius-release-1.0-15.ius.centos6.noarch.rpm
git2uをインストールする
# yum install git2u --enablerepo=ius Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile Could not retrieve mirrorlist https://mirrors.iuscommunity.org/mirrorlist?repo=ius-centos6&arch=x86_64&protocol=http error was 14: Peer cert cannot be verified or peer cert invalid Error: Cannot find a valid baseurl for repo: ius
エラーになった。。。
参照したサイトでも似たようなエラーで、対策が書いてあった。
/etc/yum.conf に、以下の1行を追加する。
sslverify=false
リトライしたら成功。
>|| # yum install git2u --enablerepo=ius (略) Installed: git2u.x86_64 0:2.16.5-1.ius.centos6 Dependency Installed: git2u-core.x86_64 0:2.16.5-1.ius.centos6 git2u-core-doc.noarch 0:2.16.5-1.ius.centos6 git2u-perl-Git.noarch 0:2.16.5-1.ius.centos6 Complete!
git clone してみる。
# git clone https://hoge.backlog.com/git/HOGE/hoge.git hoge Cloning into 'hoge... Username for ... Password for ...
clone できた!