在Windows下安装了git以后,发现git bash虽然好用,但还是有很多缺陷,于是迁移到Cygwin下使用。但是实际使用过程中发现以下问题:
远程连接不通过:
$ git pull
Unable to negotiate with xxx.xxx.xxx.xxx: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
执行
export GIT_SSH_COMMAND='ssh -o KexAlgorithms=+diffie-hellman-group1-sha1'
之后,又报错:
$git clone ssh:xxx
Cloninginto 'xxx'...
Hostkey verification failed.
fatal:Could not read from remote repository.
Pleasemake sure you have the correct access rights
and the repositoryexists.
原来如此,host key不对,检查发现Cygwin的.ssh文件夹下没有必要的私钥和公钥,将Windows下.ssh文件夹里的几个文件copy到Cygwin下的.ssh文件即可
cp /C/Users/user_name/.ssh/*/home/user_name/.ssh/