Zydecx's Site

Debug code, debug life, debug today!

使用SSH密钥实现Git多账号切换

Time: , by zydecx

阅读本文前,请先参考使用SSH密钥连接Git仓库了解SSH密钥配置方法。

场景

有时,在一台机器上需同时使用多个Git账号(个人账号和工作账号),不同的Git仓库使用不同的账号访问。本文将介绍如何通过配置实现该需求。

分别为每个账号生成SSH密钥

打开Git Bash,执行下面的命令,为每个账号分别生成SSH密钥(如可分别命名为:id_rsa_private/id_rsa_work

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

在每个账号上关联SSH公钥

将生成的公钥分别关联到对应的账号上

添加SSH配置信息

打开~/.ssh/config文件,添加以下配置信息。它定义了github_privategithub_work两个别名,分别对应个人账号和工作账号。

#for person use
Host github_private
HostName github.com
IdentityFile ~/.ssh/id_rsa_private

#for work use
Host github_work
HostName github.com
IdentityFile ~/.ssh/id_rsa_work

修改Git仓库地址

以上述配置为例,进入个人Git仓库,使用别名github_private代替服务器地址。其中,将your-username替换成你的用户名,your-repo-name替换成实际的仓库名。

git remote set-url origin git@github_private:your-username/your-repo-name.git

参考

如何在同一台电脑上使用两个github账户


This is a magic phrase. You CANNOT see it(I'll really FULE you if you do that), but it does work. Why? You may feel confused. OK, at least it doesn't afftect your experience and it works. That is what we call MAGICE!