Alain's Blog

  1. 首页
  2. Git
  3. 正文

使用SSH连接到Github

2021年10月25日 1276点热度 0人点赞 0条评论

Github

转载请注明出处,本文仅用于学习交流,不对之处,恳请指正

由于公司近期将项目都迁移到了github上面,同时所有账户都强制开启了两步验证,所以同步代码需要使用token或者ssh,故而有了这篇文章

密钥路径

  1. Linux路径

    # 当前用户的.ssh目录
    cd ~/.ssh/
  2. Windows

    # 同样在当前用户的.ssh目录中
    cd /c/Users/username/.ssh/
  3. MAC

    cd ~/.ssh

生成密钥并上传到Github

生成密钥并上传到Github

  1. 以下以在linux生成密钥为例

    # 替换YOU_EMAIL_ADDRESS为你的邮箱地址
    ssh-keygen -t rsa -b 4096 -C "YOU_EMAIL_ADDRESS"
    # 下面说明密钥的存放路径,一般直接回车
    # 请注意自己密钥所在的路径是否有以往的密钥
    # 可以修改保存地址
    Generating public/private rsa key pair.
    Enter file in which to save the key (/home/user/.ssh/id_rsa): 
    # 是否为密钥创建密码,直接回车可以实现无密码登陆,切记保护好自己的密钥
    Enter passphrase (empty for no passphrase):
    # 输入相同的密码,为空直接回车
    Enter same passphrase again:
    # 保存密码的路径以及说明
    Your public key has been saved in /home/user/.ssh/id_rsa.pub
    The key fingerprint is:
    SHA256:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX YOU_EMAIL_ADDRESS
    The key's randomart image is:
    +---[RSA 4096]----+
    |    X  . X . X   |
    |   x... ..X..    |
    |   .    X X . X  |
    |     X. X X .    |
    |    X  X . .     |
    |    X  . X . X   |
    |      ..   X X.XX|
    |     XX X   X X .|
    |       .XX+XX+XX=|
    +----[SHA256]-----+
  2. 以上代码会在用户目录下的.ssh目录中生成id_rsa(私钥)以及id_rsa.pub(公钥)

  3. 打印公钥

    # 打印公钥并复制到github
    cat ~/.ssh/id_rsa.pub
    ssh-rsa XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX== YOU_EMAIL_ADDRESS
  4. 点击Github右上角头像,选择Settings,在左侧找到SSH and GPG Key,点击New SSH key

    SSH and GPG Key

    在title中填入你想要的名字,在Key中将上方打印出来的公钥复制进来。

使用ssh更新或者拉取代码

  1. 使用ssh clone 代码

    使用ssh更新或者拉取代码

    单击clone,将clone方式切换为ssh

    # clone 仓库
    git clone git@github.com:XXXXX/XXXXXXX.git
  2. 修改原来仓库的源

    # 修改config文件
    # 也可以sourceTree中修改
    vi ./cx_android_base/.git/config
    # 将其中的url的值修改为github中复制的ssh链接

配置多个ssh密钥

因为我们可能存在不同的SSH Key来连接不同的服务器,比如个人的VPS等。所以需要配置多SSH Key登陆。在.ssh目录下生成config文件,在这里还是以linux为例子。

nano ~/.ssh/config

在其中写入如下代码

# HOST,别名,一般跟HostName一样就可以
Host github.com
# HostName,真正的域名
HostName github.com
# 验证方式
PreferredAuthentications publickey
# 用户名
User username
# 私钥路径
IdentityFile ~/.ssh/id_rsa_github

测试

# 输入如下代码
ssh -T git@github.com
# 配置成功一般会返回:
Hi UsreName! You've successfully authenticated, but GitHub does not provide shell access.
标签: Git SSH
最后更新:2022年4月20日

Alain

看了我的文,就是我的人,点个赞再走成不成

点赞
< 上一篇
下一篇 >

文章评论

取消回复

文章目录
  • 密钥路径
  • 生成密钥并上传到Github
  • 使用ssh更新或者拉取代码
  • 配置多个ssh密钥

COPYRIGHT © 2022 Alain's Blog. ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang