管理你的多个 Git 密钥(单平台多账号)

大家好,我是 CC,在这里欢迎大家的到来~

前序

书接上文,如果公司和个人使用不同的代码储存平台,每个项目配置不同的 Git 用户名和邮箱就可以实现分离;但是当公司和个人使用同一个平台时,如何进行区分呢?

操作流程

假设我们现在需要两个 Github 密钥分别用于个人项目和开源项目

查看密钥

查看已有的密钥对

bash 复制代码
ls -la ~/.ssh

生成密钥

使用两个 Github 账户的注册邮箱分别生成对应的密钥

javascript 复制代码
ssh-keygen -t ed25519 -C "私人项目邮箱地址" -f ~/.ssh/github_id_ed25519_private
ssh-keygen -t ed25519 -C "开源项目邮箱地址" -f ~/.ssh/github_id_ed25519_public

添加密钥

  1. 添加到 Github 代码平台 SSH Key 位置
  2. 添加到 ssh-agent
javascript 复制代码
ssh-add ~/.ssh/github_id_ed25519_private
ssh-add ~/.ssh/github_id_ed25519_public

SSH 配置

~/.ssh/config 文件进行编辑

bash 复制代码
Host github_private
  HostName github.com
  User git
  IdentityFile ~/.ssh/github_id_ed25519_private
  AddKeysToAgent yes
  UseKeychain yes

Host github_public
  HostName github.com
  User git
  IdentityFile ~/.ssh/github_id_ed25519_public
  AddKeysToAgent yes
  UseKeychain yes

每个配置的作用在上篇文章中有提到

项目配置

克隆远程项目

ruby 复制代码
# 个人项目
git clone git@github_private:private_account_name/repo_name.git
# 开源项目
git clone git@github_public:public_account_name/repo_name.git

修改本地项目

ruby 复制代码
git remote set-url origin git@github_public:public_account_name/repo_name.git

新建项目同理

ruby 复制代码
git remote add origin git@github_public:public_account_name/repo_name.git

参考文章

如何用 SSH 密钥在一台机器上管理多个 GitHub 账户

相关推荐
xlq2232212 分钟前
3.git
git
heimeiyingwang13 分钟前
【架构实战】Jenkins+GitLab CI/CD:持续集成与持续部署实践
架构·gitlab·jenkins
一只大袋鼠12 小时前
Git 进阶(二):分支管理、暂存栈、远程仓库与多人协作
java·开发语言·git
STDD16 小时前
Soulmask《灵魂面具》 专用服务器搭建教程
运维·服务器·github
lolo大魔王16 小时前
Linux的监测程序
linux·运维·github
我叫张小白。19 小时前
Git 分支管理与团队协作
git
米高梅狮子19 小时前
Redis
数据库·redis·mysql·缓存·docker·容器·github
_Evan_Yao20 小时前
如何搭建属于自己的技术博客(CSDN / GitHub Pages)
后端·学习·github
DogDaoDao20 小时前
Windows 下 Git 报错:`touch` 无法识别 —— 原因分析与 7 种解决方案(从入门到精通)
windows·git·程序员·npm·powershell·cmd·touch
Quirkybrain21 小时前
从多态调用到简单析构:C 语言里的对象生命周期管理
github