如何在一台主机上管理自己的多个git repository
在使用git时,通常是直接ssh-keygen生成默认秘钥.然后将共钥添加到远程仓库,就可以访问了.
但是,当我们有多个repository时,这种方式就不适用了,因为一个秘钥只能关联一个远程仓库.
如果想同时管理多个repository,这时就需要生成多个秘钥,然后配置秘钥和远程仓库的关联.
步骤1.生成指定仓库的秘钥
1. ssh-keygen -t rsa -b -C "your_email@example.com"
2. Enter a file in which to save the key (/home/you/.ssh/id_rsa): new_repository 这里不再使用默认,而是需要指定ssh key的名字,用来和指定仓库关联
3. 最后输入密码时,一般直接回车即可.
步骤2.为指定仓库设置秘钥配置
1. 进入用户目录的.ssh文件夹中 cd ~/.ssh
2. 创建ssh配置文件,文件名为config touch config
3. 进入config配置
#默认配置
Host github.com
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa
#新仓库指定配置
Host new_repository.github.com
HostName github.com
User git
IdentityFile ~/.ssh/new_repository
步骤3.使用配置的连接别名添加远程仓库
上面的两个配置中,值得注意的是Host不同,第二的Host添加指定前缀(一般为repository的名字)
添加前缀后,我们为本地repository添加远程连接时就不是
git remote add origin git@github.com:user/repository.git
而变成了
git remote add origin git@xxx.github.com:user/repository.git 此配置就是为指定仓库添加别名,好为不同仓库指定不同的秘钥文件
步骤4. 在远程仓库添加deploy_key
1. 首先进入.ssh文件,复制new_repository.pub内容
2. 进入repository settings,在如下页面点击add deploy key 粘贴new_repository.pub

步骤5.测试连接
git init
git add README.md
git commit -m "first commit"
git push -u origin master
如何在一台主机上管理自己的多个git repository的更多相关文章
- 使用elasticsearch7.3版本在一台主机上部署多个实例组建集群
系统:centos 7.4 x64 主机ip:192.168.0.160 软件包:elasticsearch-7.3.0-linux-x86_64.tar.gz 配置步骤 vim /etc/secur ...
- 一台主机上安装多个Tomcat
1. 下载解压版的Tomcat,并解压两次,分别命名为Tomcat_Server_01和Tomcat_Server_02: 2. 进入Tomcat_Server_01\bin目录,编辑service文 ...
- 关于在一台主机上安装2个不同版本的Oracle服务端
一.安装Oracle12c 按正常安装方法安装即可! ORACLE_BASE=/u01/app ORACLE_HOME=/u01/app/oracle ORACLE_SID=a4orcl 二.安装Or ...
- Apache 一台主机绑定多个域名及虚拟主机
今天研究了下Apache下如何使用一台主机绑定多个域名且使用80端口.说白了就是在一台主机上运行多个网站,并且网站域名都是使用的80端口. 具体方法如下: 1.进入Apache conf目录,找到ht ...
- Python_架构、同一台电脑上两个py文件通信、两台电脑如何通信、几十台电脑如何通信、更多电脑之间的通信、库、端口号
1.架构 C/S架构(鼻祖) C:client 客户端 S:server 服务器 早期使用的一种架构,目前的各种app使用的就是这种架构,它的表现形式就是拥有专门的app. B/S架构(隶属于C/ ...
- (转)清除已运行过Rancher和K8S的主机上的环境数据
文章转自 https://blog.csdn.net/CSDN_duomaomao/article/details/77684571?locationNum=5&fps=1 本文命令主要是参考 ...
- mysql远程访问另一台主机数据库表,实现小表广播功能
1.打开navicat,打开任意一个连接,新建一个查询,输入命令 show engines,出现如下界面 2. 如果FEDERATED对应的Support值为NO,则找到C:\ProgramData\ ...
- CentOS7Linux中自动化运维工具Ansible的安装,以及通过模块批量管理多台主机
使用自动化运维工具Ansible集中化管理服务器 Ansible概述 Ansible是一款为类Unix系统开发的自由开源的配置和自动化工具.它用Python写成,类似于saltstack和Puppet ...
- [转帖]Docker Hub上镜像发现挖矿蠕虫病毒,已导致2000台主机感染
Docker Hub上镜像发现挖矿蠕虫病毒,已导致2000台主机感染 https://www.kubernetes.org.cn/5951.html 本来想说可以用 official版本的镜像 但是一 ...
随机推荐
- 网站/IIS/Web/WCF服务 访问共享目录 映射 的解决方案
目录 问题案例 原因分析 解决问题 总结 问题案例 环境: 电脑A:winform程序: 电脑B:部署了一个文件上传的WCF服务在IIS上.且该服务的配置文件中已经增加 <identity im ...
- JS闭包中的循环绑定处理程序
前几天工作中写前端js代码时,遇到了遍历元素给它添加单击事件.就是这个问题让我整整调了一个下午.最后还是下班回家,上网查资料才知道怎么解决的. (PS:之前也在<jQuery基础教程>第四 ...
- 带分数dfs+剪枝优化
#include<iostream>#include<cstdio>#include<cstdlib>#include<ctime>using name ...
- c#按照指定长度切分字符串
int pageSize=5; var array = new List<string>(); ----------方法1-------------------- var pageCoun ...
- HashMap(不是线程安全)与ConcurrentHashMap(线程安全)
HashMap不是线程安全的 ConcurrentHashMap是线程安全的 从JDK1.2起,就有了HashMap,正如前一篇文章所说,HashMap不是线程安全的,因此多线程操作时需要格外小心. ...
- Tomcat修改端口和编码配置
1.打开Tomcat中server.xml文件,找到原本的8080,修改成没被占用的端口: 2.在这个标签里增加 URIEncoding="utf-8",修改请求的编码.
- 机器学习理论基础学习1——频率派 VS 贝叶斯派
频率派 贝叶斯派 theta是个未知的常量,X是随机变量, theta是个随机变量,X是随机变量 MLE最大似然估计 MAE最大后验概率 统计机器学习,优化问题 1)建立模型.概率 2)定义损失函数 ...
- scipy模块
- 总结C#获取当前路径的7种方法
C#获取当前路径的方法如下: 1. System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName -获取模块的完整路径. 2. ...
- Django初级手册4-表单与通用视图
表单的编写 1. detail.html模版的编写 <h1>{{ poll.question }}</h1> {% if error_message %}<p>&l ...