本地管理多个git账号

2024-05-10 00:18
文章标签 管理 多个 本地 git 账号

本文主要是介绍本地管理多个git账号,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

代码托管网站有GitHub、码云、coding等等,还有公司内部的私服gitlab,如何把多个账号管理起来使它们不相互影响呢,就要我们合理的配置ssh。
比如我现在要在github、gitee、gitlab使用三个git账号 a、b、c ,这里的a、b、c指的是你在三个平台上的注册账号,使用注册邮箱也可以。当只是用一个git账号的时候不用配置config,使用多个就要配置一下了(也有说不用配置也能正常用…)。
本文也参考了其他文章(见文末),与他们不同的是我先把账号的配置做好。
在电脑的.ssh文件夹下(比如我的路径是C:\Users\acer\.ssh)新建一个名为config的文件,没有后缀。
在这里插入图片描述
用文本编辑器打开并编辑,分享一下我的配置,注意空格及中英文:

#Host: 服务器(自己的辨识标识,可以随便写)
#HostName: 主机名或域名,建议使用域名(仓库的host地址)
#User: 仓库的用户名或者邮箱
#IdentityFile: rsa文件路径(对应的秘钥存储路径)
#PreferredAuthentications publickey: 让ssh只使用publickey方式去验证,若失败就直接跳过密码登录#github
Host github.com
HostName github.com
User a
IdentityFile ~/.ssh/github_id_rsa
PreferredAuthentications publickey#gitee
Host gitee.com
HostName gitee.com
User b
IdentityFile ~/.ssh/gitee_id_rsa#gitlab
Host gitlab.com
HostName gitlab.com
User c
IdentityFile ~/.ssh/gitlab_id_rsa

打开Git Bash
1、清除 git 的全局设置(新安装git可以跳过)

git  config --global --unset user.name 
git  config  --gloabal --unset user.email 

2、为每一个账号都生成一对秘钥(私钥和公钥)
为账号 a 生成秘钥(上面config里User部分配置的是邮箱,下面""里最好也填邮箱,便于分辨):

ssh-keygen -t rsa -C "a"

我自己实际的供参考:
在这里插入图片描述
就这样依次为GitHub、gitee、gitlab生成对应的rsa和rsa.pub文件,生成秘钥的部分截取:
在这里插入图片描述
3、将后缀的.pub的公钥分别添加到不同平台的ssh公钥里面。
4、最后是测试
ssh -T git@对应的服务器地址(也就是config里填的Host后面的内容)
如果你是Host gitee_test,那么测试的时候就这样:ssh -T git@gitee_test。
如我的:ssh -T git@gitee.com ,如果显示以下信息就是OK的:
在这里插入图片描述ssh -T git@github.com回车:
在这里插入图片描述
然后就可以“随意”使用这三个平台的仓库了。

欢迎留言评论交流讨论,提供意见、建议。

参考到的文章(谢谢他们):
https://www.jianshu.com/p/2efbe107199b
https://blog.csdn.net/qq_30227429/article/details/80229167
https://blog.csdn.net/nmzkchina/article/details/76162512
https://blog.csdn.net/xigua355/article/details/84909202
https://blog.csdn.net/u010324331/article/details/82154720
https://www.cnblogs.com/zhangceblogs/p/8488384.html
https://www.cnblogs.com/Kyouhui/p/6878963.html

这篇关于本地管理多个git账号的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/974896

相关文章

使用Redis实现会话管理的示例代码

《使用Redis实现会话管理的示例代码》文章介绍了如何使用Redis实现会话管理,包括会话的创建、读取、更新和删除操作,通过设置会话超时时间并重置,可以确保会话在用户持续活动期间不会过期,此外,展示了... 目录1. 会话管理的基本概念2. 使用Redis实现会话管理2.1 引入依赖2.2 会话管理基本操作

Python自动化提取多个Word文档的文本

《Python自动化提取多个Word文档的文本》在日常工作和学习中,我们经常需要处理大量的Word文档,本文将深入探讨如何利用Python批量提取Word文档中的文本内容,帮助你解放生产力,感兴趣的小... 目录为什么需要批量提取Word文档文本批量提取Word文本的核心技术与工具安装 Spire.Doc

C#实现将Excel工作表拆分为多个窗格

《C#实现将Excel工作表拆分为多个窗格》在日常工作中,我们经常需要处理包含大量数据的Excel文件,本文将深入探讨如何在C#中利用强大的Spire.XLSfor.NET自动化实现Excel工作表的... 目录为什么需要拆分 Excel 窗格借助 Spire.XLS for .NET 实现冻结窗格(Fro

Elasticsearch 的索引管理与映射配置实战指南

《Elasticsearch的索引管理与映射配置实战指南》在本文中,我们深入探讨了Elasticsearch中索引与映射的基本概念及其重要性,通过详细的操作示例,我们了解了如何创建、更新和删除索引,... 目录一、索引操作(一)创建索引(二)删除索引(三)关闭索引(四)打开索引(五)索引别名二、映射操作(一

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多

IDEA和GIT关于文件中LF和CRLF问题及解决

《IDEA和GIT关于文件中LF和CRLF问题及解决》文章总结:因IDEA默认使用CRLF换行符导致Shell脚本在Linux运行报错,需在编辑器和Git中统一为LF,通过调整Git的core.aut... 目录问题描述问题思考解决过程总结问题描述项目软件安装shell脚本上git仓库管理,但拉取后,上l

Linux创建服务使用systemctl管理详解

《Linux创建服务使用systemctl管理详解》文章指导在Linux中创建systemd服务,设置文件权限为所有者读写、其他只读,重新加载配置,启动服务并检查状态,确保服务正常运行,关键步骤包括权... 目录创建服务 /usr/lib/systemd/system/设置服务文件权限:所有者读写js,其他

在Node.js中使用.env文件管理环境变量的全过程

《在Node.js中使用.env文件管理环境变量的全过程》Node.js应用程序通常依赖于环境变量来管理敏感信息或配置设置,.env文件已经成为一种流行的本地管理这些变量的方法,本文将探讨.env文件... 目录引言为什么使php用 .env 文件 ?如何在 Node.js 中使用 .env 文件最佳实践引

python库pydantic数据验证和设置管理库的用途

《python库pydantic数据验证和设置管理库的用途》pydantic是一个用于数据验证和设置管理的Python库,它主要利用Python类型注解来定义数据模型的结构和验证规则,本文给大家介绍p... 目录主要特点和用途:Field数值验证参数总结pydantic 是一个让你能够 confidentl

Git进行版本控制的实战指南

《Git进行版本控制的实战指南》Git是一种分布式版本控制系统,广泛应用于软件开发中,它可以记录和管理项目的历史修改,并支持多人协作开发,通过Git,开发者可以轻松地跟踪代码变更、合并分支、回退版本等... 目录一、Git核心概念解析二、环境搭建与配置1. 安装Git(Windows示例)2. 基础配置(必