github与bitbuckut的 ssh生成

来源:互联网 发布:自动生成字幕软件 编辑:程序博客网 时间:2024/06/11 21:03

        转自 http://blog.aboutc.net/linux/37/github-bitbucket-connect-via-ssh-keys

序言

项目托管服务较好的当属 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 "your_email@example.com"

使用你的邮件创建一个新的 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 notprovide 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 git@bitbucket.org:you_username/project.git

参考

本文大部分内容翻译自下面的连接

GitHub Help: https://help.github.com/articles/generating-ssh-keys
0 0
原创粉丝点击