• 【版本控制】Github和Gitlab同时使用ssh


    前言

    最近在使用 WSL 时会同时用到 GitHub和 Gitlab ,因此与传统配置 ssh 方式有些不一样的地方,这里特别记录一下

    本地生成公私密钥

    首先确保把之前的 ssh 信息清除,也可以将整个 ~/.ssh 目录删除

    rm -rf ~/.ssh/*
    
    • 1

    我们分别生成 Github 和 Gitlab账号的 SSH 密钥

    • Github 生成密钥
    ssh-keygen -t rsa -C 2053731441@qq.com -f ~/.ssh/github_id-rsa
    
    • 1
    • Gitlab 生成密钥
    ssh-keygen -t rsa -C wangyuqiang@rt-thread.com -f ~/.ssh/gitlab_id-rsa
    
    • 1

    注意不要选择其他操作,一路回车即可

    此时打开 ~/.ssh/ 目录可以看到生成了四个文件:github_id-rsa github_id-rsa.pub gitlab_id-rsa gitlab_id-rsa.pub

    其中 .pub 后缀的文件为公钥,需要上传到远程仓库SSH;没有后缀的则是私钥,本地留存

    远程仓库 SSH 填写公钥密钥

    我们先打开 Github 的 Settings选项,然后选择 SSH and GPG keys->New SSH keyTitle可以随意拟定,Key需要查看刚刚的 github_id-rsa.pub 文件,并且复制到 Gitlabkey一栏中;

    Gitlab 的操作方式与 Github 类似,具体步骤:

    打开 Gitlab -> 用户设置 -> SSH密钥 ,在密钥一栏填入 gitlab_id-rsa.pub文件中的具体值,标题自拟即可。

    配置不同 Host 的 SSH Key

    回到 ~/.ssh/ 目录下,并且创建一个名为 config 的文件,在该文件中填写以下具体代码,其中部分参数依照自己的信息填写:

    #github
    Host github.com
        Hostname ssh.github.com
        Port 443
        User git
        IdentityFile ~/.ssh/github_id-rsa
    
    #gitlab
    host git.rt-thread.com
        Hostname git.rt-thread.com
        User git
        IdentityFile ~/.ssh/gitlab_id-rsa
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    在这里插入图片描述

    验证

    使用下面的命令分别验证 Github 和 Gitlab的 SSH 配置

    • Github SSH 验证
    ssh -T git@github.com
    
    • 1
    • Gitlab SSH 验证
    ssh -T git@rt-thread.com
    
    • 1

    如果出现如下提示即表示远程仓库 SSH 公钥和本地 SSH 密钥配对成功

    在这里插入图片描述

  • 相关阅读:
    记录--从AI到美颜全流程讲解
    1044 Shopping in Mars
    C++ Reference: Standard C++ Library reference: Containers: array: array: size
    2022-08-26 第六小组 瞒春 学习笔记
    【web应用系统实践】第四章作业
    golang 反射机制
    JS-转换为布尔值
    石油化工行业商业供应链管理系统:大数据支撑,打造高质量可视化供应链
    用C语言列出Linux或Unix上的网络适配器
    如何使用IP归属地查询API来追踪网络活动
  • 原文地址:https://blog.csdn.net/qq_56914146/article/details/132922098