bitbucket通過SSH密鑰連接

序言

項目託管服務較好的當屬 GitHub 和 Bitbucket 了, 二者都支持 Git 版本控制。二者最大的區別是:

    1. GitHub 很火正常訪問,Bitbucket 最近訪問有點問題(...)
    1. GitHub 私有庫需要付費,Bitbucket 私有庫免費
    1. GitHub 只支持 Git,Bitbucket 同時支持 Mercurial

廢話不多說,開始配置

Step 1: 檢查SSH密鑰

> cd ~/.ssh

如果返回 "No such file or directory" 轉 Step 2. 否則說明你已經有一個密匙對,轉到 Step 3.

Step 2: 生成新的SSH密鑰

> ssh-keygen -t rsa -C "[email protected]"

使用你的郵件創建一個新的 SSH 密匙標籤,將會生成 ~/.ssh/id_rsa 文件, 用於存儲你的密匙。

現在,你需要輸入一個密碼:

Enter passphrase (empty for no passphrase): [輸入一個密碼]
Enter same passphrase again: [重新輸入密碼]

一般沒有特殊需要,直接回車即可。

你將看到一下信息:

Your identification has been saved in /home/you_username/.ssh/id_rsa.
Your public key has been saved in /home/you_username/.ssh/id_rsa.pub.
The key fingerprint is:
01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db your_email@example.com

Step 3-1: 複製 SSH 密匙

安裝複製工具:

> sudo zypper install xclip

根據自己的系統選擇 zypper/yum/apt-get

複製 SSH 密匙到剪切板:

> xclip -sel clip < ~/.ssh/id_rsa.pub

當然你也可以不安裝 xclip,使用 cat 命令,輸入到終端再複製。

Step 3-2: 添加 SSH 密匙到 GitHub

1. 點擊右上角 "Account Settings" 設置圖標
2. 點擊左側 "SSH Keys"
3. 點擊 "Add SSH key"
4. 粘貼你的密匙到 "Key" 文本區
5. 點擊 "Add key"
6. 確認操作輸入你的 GitHub 密碼

Step 3-3: 添加 SSH 密匙到 Bitbucket

1. 點擊右上角"用戶頭像"
2. 點擊下拉菜單中的 "Manage account"
3. 點擊左側 "SSH keys"
4. 點擊 "Add key"
5. 粘貼你的密匙到 "Key" 文本區
6. 點擊 "Add key"

Bitbucket 的 Account settings 中可以設置爲中文的。

Step 4: 測試連接

GitHub:

> ssh -T git@github.com

Bitbucket:

> ssh -T git@bitbucket.org

你可能會看到這樣的提示:

The authenticity of host 'github.com (207.97.227.239)' can't be established.
RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
Are you sure you want to continue connecting (yes/no)?

輸入 yes 即可

GitHub 成功提示:

Hi you_username! You've successfully authenticated, but GitHub does not
provide shell access.

Bitbucket 成功提示:

conq: logged in as you_username.

You can use git or hg to connect to Bitbucket. Shell access is disabled.

如果出現 access denied 一般是添加的 key 的問題,請檢查本地 key 和線上 key 是否相同, 或參考 Error: Permission denied (publickey)

到此你就可以使用 git clone 你的項目,提交更改了。

注:Bitbucket 使用 ssh 方式克隆, 如:git clone [email protected]:you_username/project.git

參考

本文大部分內容翻譯自下面的連接

GitHub Help: https://help.github.com/articles/generating-ssh-keys
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章