`
wbj0110
  • 浏览: 1587522 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

GitHub/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 "your_email@example.com"

使用你的邮件创建一个新的 SSH 密匙标签,将会生成 ~/.ssh/id_rsa 文件, 用于存储你的密匙。

现在,你需要输入一个密码:

Enter passphrase (empty forno passphrase):[输入一个密码]Enter same passphrase again:[重新输入密码]

一般没有特殊需要,直接回车即可。

你将看到一下信息:

Your identification has been saved in/home/you_username/.ssh/id_rsa.Yourpublic 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 inas 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

参考

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

GitHubHelp: https://help.github.com/articles/generating-ssh-keys
转自:http://blog.aboutc.net/linux/37/github-bitbucket-connect-via-ssh-keys
分享到:
评论

相关推荐

    autodeploy-github-bitbucket:一个简单PHP脚本,可以从github和bitbucket自动部署,并执行“ composer install”之类的命令。

    将服务器的SSH密钥添加到Github或Bitbucket 。 在您的服务器中,从Github或Bitbucket克隆存储库,例如: git clone git@github.com:user/repo.git 使用以下命令更改服务器上存储库的所有者: chown -R your_user:...

    ssh-git:桌面应用程序,用于管理Github,Bitbucket和Gitlab帐户的SSH密钥

    ssh-git是一个桌面应用程序,用于管理Github,Bitbucket和Gitlab帐户的SSH密钥。 下载 该应用程序适用于Mac和Linux,可以从网站上下载。 特征 在几秒钟内设置SSH密钥 :rocket: 无需使用终端或处理SSH配置文件 :...

    git-deploy:服务器中自动拉动的Php脚本(使用来自GitLab,GitHub和Bitbucket的WebHook)

    一个PHP脚本,可自动从存储库拉到Web服务器(使用GitHub,GitLab或Bitbucket上的webhook)。 您可以配置此脚本从哪个分支提取。 该脚本对于开发和生产服务器都非常有用。 在您的服务器上 SSH协议 生成SSH密钥并将...

    git-auto-deploy:在Git推送事件或Web挂钩上自动部署GitHub,GitLab或Bitbucket项目

    git自动部署在Git推送事件或Web挂钩上自动...例如deploy.example.com 打开app \ settings.php并根据您的服务器更新db,git_path,composer_path 确保在GitHub,BitBucket,GitLab中添加Web服务器用户的公共ssh密钥以与W

    custom-ssh-key-buildpack:向您添加SSH密钥Heroku dyno

    GitHub: : Bitbucket: : 将私钥编码为base64字符串,并将其添加为heroku应用程序的CUSTOM_SSH_KEY环境变量。 制作一个逗号分隔的主机列表,将其用于ssh密钥,并将其添加为heroku应用程序的CUSTOM_SSH_KEY_HOSTS...

    git-mirror-action::next_track_button:一个GitHub Action,用于通过SSH将git存储库镜像到另一个位置

    GitHub Action,用于通过SSH 到另一个位置。 输入项 source-repo 源存储库的必需SSH URL。 destination-repo 目标存储库的必需SSH URL。 环境变量 SSH_PRIVATE_KEY :创建一个不带密码的,该密码可以访问两个存储...

    sourceTree 证书

    对于频繁在多台电脑间切换的开发者,可以考虑使用GitHub的部署密钥或密钥管理工具(如Keybase)来同步SSH密钥,以便在不同设备上无缝工作。 总结,SourceTree证书是Git操作中的关键组件,正确配置和管理SSH证书能...

    ansible-deploy:使用可配置的 SSH 密钥将 Git 存储库部署到远程主机

    部署 - Ansible 角色 此角色帮助使用可配置的 SSH 密钥将 Git 存储库部署到远程主机 安装 将此存储库添加为 git 的子模块: git submodule add git@github.... repo : git@bitbucket.org:myproject/myapp # the r

    SourceTree git的图形化工具 free

    **SourceTree:Git的图形化工具** ...通过SourceTree,你可以更轻松地管理代码版本,协同开发,并与GitHub或Bitbucket等平台进行无缝对接。安装和使用SourceTree是提升Git工作流效率的一个好选择。

    heroku-buildpack-ssh:Heroku buildpack用于为您的所有dynos添加私有ssh密钥

    Heroku Buildpack:SSH 从环境变量设置ssh私钥。...heroku config:set SSH_KNOWN_HOSTS= " github.com bitbucket.com " 将构建包添加到您的应用程序: heroku buildpacks:add https://github.co

    Sourcetree Mac版

    8. **集成GitHub和Bitbucket**:可以直接在Sourcetree中访问GitHub和Bitbucket的仓库,无需离开应用即可完成大部分操作。 9. **设置和配置**:用户可以根据个人习惯和项目需求定制Sourcetree的各种设置,如主题、...

    SourceTree_for_windows64bit_1.6.zip

    - **克隆仓库**:通过输入URL,可以从GitHub或Bitbucket等托管平台克隆仓库到本地。 - **创建分支**:在SourceTree中创建新的分支,可以用于隔离开发工作。 - **提交与推送**:对文件进行修改后,可以进行暂存、...

    SourceTree for Windows Git,Git客户端可视化操作工具

    5. **集成GitHub和Bitbucket**:SourceTree与Atlassian的在线代码托管平台GitHub和Bitbucket深度整合,可以直接进行代码的推送和拉取,查看和处理Pull Request。 6. **SSH密钥管理**:SourceTree支持配置SSH密钥,...

    SourceTreeSetup-3.3.8.rar

    6. **集成GitHub和Bitbucket**:可以直接在SourceTree中浏览和操作GitHub及Bitbucket上的项目,无需打开网页端。 7. **书签功能**:用户可以为特定的提交添加书签,方便快速定位到关键的代码状态。 8. **自定义...

    Source Tree 2.5.5

    6. **GitHub和Bitbucket集成**:由于Atlassian是Bitbucket的拥有者,Source Tree与这两个平台的集成非常紧密。用户可以直接在应用内访问和管理GitHub及Bitbucket上的项目,无需离开Source Tree。 7. **SSH支持**:...

    Mac 下配置 Git 服务器

    但请注意,这样的配置仅适用于小型团队或个人项目,对于大型项目或公开仓库,建议使用专业的Git服务,如GitHub、GitLab或Bitbucket。 通过这个过程,你可以学习到Git的基本操作、SSH密钥的使用以及Git服务器的简单...

    常用git命令大全

    4. 测试SSH密钥是否成功配置:可以使用`ssh -***`来测试是否能够成功连接到Github。 Git的常用命令包括但不限于以下几种: - `git init`:初始化一个新仓库。 - `git clone`:复制一个远程仓库到本地。 - `git add...

    sourcetree

    7. **GitHub和Bitbucket集成**:Sourcetree与Atlassian的其他产品(如GitHub和Bitbucket)紧密集成,用户可以直接在应用内访问和管理这些服务上的仓库。 8. **书签功能**:用户可以为重要的提交添加书签,方便日后...

    SourceTree安装包

    3. **SSH密钥管理**:方便地配置和管理SSH密钥,以便安全地连接到远程仓库。 4. **拉取请求**:对于使用GitHub或Bitbucket的用户,SourceTree支持查看和处理拉取请求。 5. **书签**:可以创建书签来标记代码的特定...

    SourceTreeSetup-3.0.17【官方下载】

    安装完成后,你可以通过添加本地Git仓库或者链接远程仓库(如GitHub、Bitbucket)来开始你的Git之旅。SourceTree会自动检测系统上的Git环境,确保无缝集成。 总的来说,SourceTree以其简洁的界面和强大的功能,为...

Global site tag (gtag.js) - Google Analytics