Git同时使用不同平台代码仓库
2024-10-19 04:21:11
问题描述
公司项目使用代码仓库为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)克隆成功
最新文章
- SQLServer字符操作
- 1o_Samba
- Acadia Lab 6 轮盘游戏机
- JS客户端判断
- iOS-Runtime-Headers
- C# 编码转换 UTF8转GB2312 GB2312转UTF8
- Gold Coins 分类: POJ 2015-06-10 15:04 16人阅读 评论(0) 收藏
- Maven 和 Ant 的区别?
- Jquery 格式化时间
- jQuery—一些常见方法(3)【width(),innerWidth(),outerWidth()】
- 谈谈 jQuery 中的防冲突(noConflict)机制
- 模糊语意变数、规则和模糊运算--AForge.NET框架的使用(二)
- 优美序列(sequence)
- 【Java】字符串工具类
- CentOS7安装Jdk1.8
- 一,ESP8266下载和刷固件(基于Lua脚本语言)
- CentOS 7下升级MySQL5.7.23的一个坑
- Sublime Text 使用方法
- 《Python》 面向对象三大特性之继承
- 2015 PHP框架调查结果出炉,Laravel最受欢迎!
热门文章
- php面向对象精要(2)
- POJ2406(SummerTrainingDay10-I KMP)
- 基于react的标准form+table页面的请求流程图
- Android - Android Studio 解决访问被墙的问题
- Expo大作战(十三)--expo如何自定义状态了statusBar以及expo中如何处理脱机缓存加载 offline support
- 【前端】NodeJs包管理工具NPM
- SQL Server 中为何拥有db_owner权限的账号删除不掉数据库
- JavaScript、ES5、ES6的区别
- 小米正式开源 SQL 智能优化与改写工具 SOAR
- UNIX高级环境编程(11)进程控制(Process Control)- 进程快照,用户标识符,进程调度