我正在使用bitbucket並在我的筆記本電腦上無法使用git來克隆存儲庫。我遇到了一個錯誤:由於缺少公鑰導致無法從bitbucket進行克隆
Permission denied(publickey).
我該如何解決這個問題?我不記得設置一個公鑰,但如果我明顯不這樣做。 (我正在使用windows。)
我正在使用bitbucket並在我的筆記本電腦上無法使用git來克隆存儲庫。我遇到了一個錯誤:由於缺少公鑰導致無法從bitbucket進行克隆
Permission denied(publickey).
我該如何解決這個問題?我不記得設置一個公鑰,但如果我明顯不這樣做。 (我正在使用windows。)
這僅僅意味着Git在%HOME%/.ssh
中找不到公鑰/私鑰。
這又意味着shhd(服務器上的ssh守護進程)在服務器~git/.ssh/authorized_keys
中找不到匹配的公鑰。
您可以確保使用例如一個HTTPS URL(這是什麼OP打算使用):
cd c:\path\to\my\repo
git remote set-url origin https://bitbucket.org/<owner>/<repo>
關於known_hosts
,一個簡單的ssh -T [email protected]
將解決這個問題:
$ ssh -T [email protected]
The authenticity of host 'bitbucket.org (131.103.20.168)' can't be established.
RSA key fingerprint is 97:8c:1b:f2:6f:14:6b:5c:3b:ec:aa:46:46:74:7c:40.
Are you sure you want to continue connecting (yes/no)?
添加'是',bitbucket.org將被添加到~/.ssh/known_hosts
。
然而,在沒有註冊公鑰的情況下,結果仍然是一樣的。
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'bitbucket.org,131.103.20.168' (RSA) to the list of known hosts.
Permission denied (publickey).
爲Windows上的Git的bash的是不奇怪:
在msysgit/Git for windows 1.9.5 Git的bash的是一個古老的一個:
GNU bash, version 3.1.20(4)-release (i686-pc-msys)
Copyright (C) 2005 Free Software Foundation, Inc
但隨着phasing out of msysgit(Q4 2015)和新的Git For Windows(2015年第2季度),您現在有Git for Windows 2.4.4。
它有一個更近的bash,基於64bits msys2 project,基於現代Cygwin(POSIX兼容層)和MinGW-w64的獨立重寫MSYS,旨在與本機Windows軟件更好地互操作。 msys2附帶its own installer too。
現在的GIT中是bash(與new Git For Windows):
GNU bash, version 4.3.33(3)-release (x86_64-pc-msys)
Copyright (C) 2013 Free Software Foundation, Inc.
到位桶具有SSH和HTTPS訪問。
此外,您還會看到,當您單擊其網站上的克隆按鈕時,它也會爲您提供URL(https)。
如果您仍有問題,請諮詢您的回購所有者/管理員。
刪除了關於bash的東西,因爲它與問題無關(它只是讓你感到困惑,因爲在windows上使用git很奇怪) – alternative