最近才開始使用 source tree 搭 bitbucket 來做 version control,遇到的都是 SSH 認證的問題。首先是要在 bitbucket 的設定加入自己電腦的 SSH key,再來就是要在電腦入的 ssh 加入 bitbucket 的 identity。第一點比較易做就不作筆記了,第二點就有一點點不太易找到原因,所以就記錄一下。

如果在 push 的時候出現以下錯誤:

[email protected]: PERMISSION DENIED (PUBLICKEY).

就有可能是 local 電腦的 ssh 未有加入 bitbucket 的 identity 所致。先到 terminal 試試連線:

$ ssh -Tv [email protected]

如果出現 “Permission denied (publickey).”,再執行以下指令:

$ ssh-add -l

如果沒有像 “4096 SHA256:….. {your-user-name}-Bitbucket (RSA)” 這樣的字串,那就要加入那個 identity。加入前請先確定你已經 generate 了 SSH-key 以及有用 OAuth 連結 bitbucket 的帳戶。

在 ~/.ssh 資料夾內,應該會有一個檔案叫 “{your-user-name}-Bitbucket”,然後用以下指令加入該檔:

$ ssh-add {your-user-name}-Bitbucket

加入後再用“ssh-add -l”看看有沒有這個 identity,有就代表成功了。最後可以再執行“ssh -Tv [email protected]”看看能否連線,當然直接再 push 也可以啦。


0 Comments

發佈留言

Avatar placeholder

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *