[マイナーねた][git][Windows][TortoiseGit ]windows gitをバージョンアップしたらgit pull /git pushできなくなって直した

windows gitをバージョンアップしたらgit pull /git pushできなくなって直した方法メモ

TortoiseGitでコミットしようとしたら
gitのバージョンが古いとエラーが出たので
widnowsのgitをバージョンアップした

コミットしてpushしようとしたら

git pull
Unable to negotiate with [hostname] port 20022: no matching host key type found. Their offer: ssh-rsa,ssh-dss
fatal: Could not read from remote repository.

とエラー出てPushできなくなっていた
(git pull も同様のエラー)

・サーバー(git) gitlite

最後にpushできた履歴を確認してみる

gitと同じサーバー立てているRedmineがリポジトリ参照しているので確認

Redmineからは参照できる
一ヶ月くらい前(最後にPushしたところまで見えているよう)
(趣味ベースのリポジトリなのでたまにしかPushはしていない、、)

WindowsからSSHだと接続できる(ssh接続時はPort=20022指定している)

git push エラーの内容にはport 20022とあるが

.git/configの
リモートリポジトリ指定にはPort=20022の記載が無いので

.git/configでは、

~/.ssh/configで指定されているサーバー指定を使用しているようだ

色々調べていると

~/.ssh/config

HostKeyAlgorithms +ssh-rsa
PubkeyAcceptedKeyTypes +ssh-rsa

の記載、追加すると動きそうだ

(参考URL:https://qiita.com/fala/items/0b11969de1ed6c738d38)

で最初コマンドプロンプトで

cd ~/.ssh/config
とやってみると
エラーになった ※1

cd ~/ = c:\Users[ユーザー名]
なのでとりあえずエクスプローラーで

ファイル

c:\Users[ユーザー名].ssh/config

を開いて該当の箇所に

HostKeyAlgorithms +ssh-rsa
PubkeyAcceptedKeyTypes +ssh-rsa
と追記した

例)こんな感じ

HOST xxx <- sshで接続する際の別名定義
HOSTNAME xxx <- 接続するホスト名とかIPアドレスとか
USER xxx <- 接続User名:gitliteならgitoliteとか
HostKeyAlgorithms +ssh-rsa <-これを追記(その1)
PubkeyAcceptedKeyTypes +ssh-rsa <-これを追記(その2)
PORT 20022 <-20022に指定サーバー立てていたので、、通常は大体 22
IDENTITYFILE ~/.ssh/xxx <-鍵ファイル

↑ファイル修正ー>保存後 git pull / git push 以前のようにできるようになりました!!

[※1]
cd ~/.ssh/configコマンドプロンプトだとエラーになるけど、PowerShellなら使えるよ

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク