git pull, git cloneをhttpsのremoteに対して実行した場合に、以下の様なエラーになる場合がある。

gnutls_handshake() failed: A record packet with illegal version was received.

これは、ubuntuのgitパッケージがdebianベースのため、gnutlsに依存しているためhttps接続の際にエラーとなるらしい。

※gnutlsのバグなのか、ポリシーが厳格なせいなのかは調べてみてちょっとよくわからなかった。

解決策は以下のAsk ubuntuに載っていたのだけれども、12.04の記事だったので探すのに手間取った。 要はgitのdebianパッケージをgnutlsではなく、opensshベースでコンパイルしろということだそうだ。

http://askubuntu.com/questions/186847/error-gnutls-handshake-falied

基本的にgitパッケージのバージョン以外は上の回答のとおりにやればよい。