1.問題場景:
svn有一個版本庫在本地,使用的是主機名訪問,Git的版本庫在遠端。SVN和git原來版本庫都不能繼續推送了
使用tortoiseGit推送報如下錯:Disconnected: No supported authentication methods available (server sent: publickey)
2.解決方法:
svn:直接覆蓋安裝原來的svn server。用戶和版本倉庫都還在。svn客戶端只需要重定位下url就可以。
svn->菜單項->重定位->再輸入對應的帳戶名和密碼就行
git:之前使用的公私鑰對,私鑰已經沒有了,於是重新生成。參考如下命令。這步操作和初次配置git相同。添加對應的公鑰信息之後就可以用git繼續同步遠程倉庫了。
設置git:
設置git的user name和email:
git config --global user.name "xxx"
git config --global user.email "[email protected]"
生成密鑰:
ssh-keygen -t rsa -C "[email protected]"
按3個回車
最後得到了兩個文件:id_rsa和id_rsa.pub
添加公鑰
在代碼庫中添加公鑰信息,e.g ~/.ssh/id_rsa.pub 中的公鑰
3.tortoise報錯
Disconnected: No supported authentication methods available (server sent: publickey)
將原來的ssh客戶端更改爲git 目錄下的ssh.exe就可以