web-dev-qa-db-ja.com

git cloneエラー:gnutls_handshake()failed:予期しないTLSパケットを受信しました

Armv7lでUbuntu 18.04 LTSを実行しています。プロキシ内でgit cloneを実行しています(プロキシ変数を適切に設定しました)が、今ではこれを取得しています。

fatal: unable to access '<my_git>.git/': gnutls_handshake() failed: An unexpected TLS packet was received.

以前はUbuntu 16.04で動作していました。 この解決策 をチェックしましたが、うまくいきません。私がやろうとしているのは、クローンをgitすることです。

11
Rock

最終的に答えを見つけました。私がしなければならないようです:

git config --global http.proxy http://<my_proxy>:<my_port>
git config --global https.proxy https://<my_proxy>:<my_port>

これに少し時間を費やしましたが、幸いなことに最終的には機能します。これを修正するのは難しいと思いましたが、Ubuntu 16.04でこれまで行ったことのないコマンドであることがわかりました。

24
Rock

に問題があるかもしれません ナッツ パッケージ。コンパイルする必要があります git gnutlsの代わりにopensslを含むパッケージ。以下の手順に従ってください、

Sudo apt-get install -y build-essential fakeroot dpkg-dev
Sudo apt-get -y build-dep git
Sudo apt-get install -y libcurl4-openssl-dev

mkdir git-openssl
cd git-openssl
apt-get source git
cd git-*
sed -i -e 's/libcurl4-gnutls-dev/libcurl4-openssl-dev/g' 
./debian/control
sed -i -- '/TEST\s*=\s*test/d' ./debian/rules
Sudo dpkg-buildpackage -rfakeroot -b
Sudo dpkg -i git_2.7.4-0ubuntu1.6_arm64.deb

#CleanUp
cd ../../
Sudo rm -rf git-openssl

This Bog または これを行うための簡単なスクリプトをここで見つけることができます に従うことができます

1
nullbyte91