zoukankan      html  css  js  c++  java
  • Git同时使用不同平台代码仓库

    问题描述

    公司项目使用代码仓库为gitinn/gitlab等,个人项目使用github进行托管,而公司项目和个人项目设置的邮箱和用户名是不同的,而ssh的密钥对又是基于这两个信息生成的,所以此时想要同时使用两个平台的代码仓库,则会显示仓库不存在或没有权限之类的报错。

    刚开始是使用gitinn/gitlab作为仓库的,克隆github项目时会报错:

    直接将将id_rsa.pub公钥加入到github中,但是仍然报错,继续克隆项目则会提示:

    此时意识到,当前~/.ssh下的id_rsa和id_rsa.pub是配置成了gitinn/gitlab的密钥对,而github平台的ssh秘钥对是配置了github_rsa文件,所以需要生成该文件名的密钥对才能访问到github仓库

    解决之道

    (1)配置.ssh/config文件, 使得克隆不同平台项目时使用不同的秘钥文件

    #gitinn
    Host gitinn.com
    Hostname git.gitinn.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa
    
    #github
    Host github.com
    HostName github.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/github_rsa
    

    (2)生成github_rsa和github_rsa.pub密钥对

    ssh-keygen 
    

    具体执行流程:

    (3)此时将生成的 ~/.ssh/github_rsa.pub文件放到github平台,然后测试是否有权限

    ssh -T git@github.com
    

    (4)克隆成功

  • 相关阅读:
    关于前后端跨域问题的解决
    vue+vuex+router+element ui
    winfrom导入excel文件
    winform 导出excel文件
    winfrom DataGridView 列表操作
    LaTex之CTex初体验一
    图像配准的步骤
    Phase Based Feature Detection and Phase Congruency(相位一致性)
    查找论文中的代码
    KullbackLeibler
  • 原文地址:https://www.cnblogs.com/zqunor/p/10482646.html
Copyright © 2011-2022 走看看