Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
CentOS6でのgitアップデート(1.7→2.16)

gitのバージョンが古く(1.7)「git clone」でエラー。

Please upgrade your git client.
GitHub.com no longer supports git over dumb-http: https://github.com/blog/809-git-dumb-http-transport-to-be-turned-off-in-90-days

gitのバージョンをアップデートする。

参考(CentOS7): http://www.cyamax.com/entry/2017/05/02/060000

作業環境

CentOS6

手順

1.既存のgitをアンインストール

# yum remove git

2.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

参考: https://dl.iuscommunity.org/pub/ius/stable/CentOS/6/x86_64/repoview/ius-release.html

3.IUSのリポジトリを、通常のyum install時参照させない

# vi /etc/yum.repos.d/ius.repo

enabled=1

enabled=0

4.git2uがインストールできるか確認する

# yum --enablerepo=ius list git2u
Available Packages
git2u.x86_64                      2.16.2-1.ius.centos6                       ius

git2uが出たら、インストール可能

エラー

私の環境だけだと思うが、「yum list」したら下記エラーが出た。

[Errno 14] Peer cert cannot be verified or peer cert invalid
Trying other mirror.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: ius. Please verify its path and try again

下記を追加することで、エラーが解消しました。

# vi /etc/yum.conf
sslverify=false

参考: https://autellinux.com/category/troubleshooting/linux-yum-peer-cert-cannot-be-verified-or-peer-cert-invalid/

5.git2uをインストールする

# yum install git2u --enablerepo=ius
# git --version
git version 2.16.2

エラー

git cloneできない

「git clone」しようとするとエラーになる

参考: https://mseeeen.msen.jp/git-ssl-or-nss-connect-error-in-centos-6/

# git clone https://github.com/swagger-api/swagger-ui.git
fatal: unable to access 'https://github.com/swagger-api/swagger-ui.git/': SSL connect error

CURLで詳細情報を出力するようにして、再度「git clone」してみると NSSでエラーになっている事が分かる。

# export GIT_CURL_VERBOSE=1
# git clone https://github.com/swagger-api/swagger-ui.git
Cloning into 'swagger-ui'...
* Couldn't find host github.com in the .netrc file; using defaults
* About to connect() to github.com port 443 (#0)
*   Trying 192.30.255.112... * Connected to github.com (192.30.255.112) port 443 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
*   CAfile: /etc/pki/tls/certs/ca-bundle.crt
  CApath: none
* NSS error -12190
* Error in TLS handshake, trying SSLv3...
> GET /swagger-api/swagger-ui.git/info/refs?service=git-upload-pack HTTP/1.1
User-Agent: git/2.16.2
Host: github.com
Accept: */*
Accept-Encoding: gzip
Accept-Language: ja-JP, *;q=0.9
Pragma: no-cache

NSSをアップデートします。

# yum update nss

curlでエラーになるので、apacheを再起動する

Problem with the SSL CA cert (path? access rights?)

参考: http://ichiy.hatenablog.com/entry/2014/09/29/155153

# service httpd restart
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.