生成秘钥

# 为账号一(如个人账号)生成密钥
ssh-keygen -t ed25519 -C "personal@example.com" -f ~/.ssh/id_ed25519_personal

# 为账号二(如工作账号)生成密钥
ssh-keygen -t ed25519 -C "work@example.com" -f ~/.ssh/id_ed25519_work

查看秘钥

# 查看并复制公钥
cat ~/.ssh/id_ed25519_personal.pub
cat ~/.ssh/id_ed25519_work.pub

设置config

# 编辑配置文件
vim ~/.ssh/config
# 个人账号配置
Host personal.github.com
    HostName github.com
    User git
    IdentityFile ~/.ssh/id_ed25519_personal
    IdentitiesOnly yes

# 工作账号配置
Host work.github.com
    HostName github.com
    User git
    IdentityFile ~/.ssh/id_ed25519_work
    IdentitiesOnly yes

设置仓库ssh url

# 进入仓库目录
git remote set-url origin git@personal.github.com:username/repo.git
# 或
git remote set-url origin git@work.github.com:company/repo.git

测试 ssh url

# 测试个人账号连接
ssh -T git@personal.github.com
# 成功会显示:Hi <你的个人用户名>! You've successfully authenticated...

# 测试工作账号连接
ssh -T git@work.github.com
# 成功会显示:Hi <你的工作用户名>! You've successfully authenticated...