发布于 2026-01-06 0 阅读
0

如何管理GitHub、GitLab等平台的多个SSH密钥。

如何管理GitHub、GitLab等平台的多个SSH密钥。

简要教程:如何构建项目并设置多用户 Git SSH 工作流。

当使用一台机器运行多个 Git 账户时,SSH 设置可能会遇到一些问题。实现多用户配置最简单的方法是按目录结构化 Git 仓库,例如:

projects
├── work
│   ├── enterprise-fiz-buz
│   └── ...
└── personal
    ├── karolis.sh
    └── ...
Enter fullscreen mode Exit fullscreen mode

本简短教程将帮助您为此类工作流程设置 SHH。

生成新的 SSH 密钥

要生成新的 SSH 密钥,请使用提供的模板脚本(或查看文档):

export EMAIL=karolis.sarapnickis@work.com
export SSH_FILE=$HOME/.ssh/id_rsa_work
ssh-keygen -t rsa -b 4096 -C $EMAIL -f $SSH_FILE
ssh-add -K $SSH_FILE
echo "🔽 PUBLIC KEY BELOW 🔽" && cat $SSH_FILE.pub
pbcopy < $SSH_FILE.pub
Enter fullscreen mode Exit fullscreen mode

剩下的就是将 SSH 密钥添加到您的GitHub / GitLab / 等帐户中。

多用户 Git SSH 设置

总体思路是,借助git includes,根据你的工作目录使用特定的ssh 命令

更新~/.gitconfig文件:

[user]
  name = Karolis Šarapnickis
  email = pastas.k@gmail.com
[core]
  sshCommand = ssh -i ~/.ssh/id_rsa
[push]
  default = current
[includeIf "gitdir:~/projects/work/"]
  path = ~/.gitconfig.work
Enter fullscreen mode Exit fullscreen mode

文件内容如下~/.gitconfig.work

[user]
  email = karolis.sarapnickis@work.com
[core]
  sshCommand = ssh -i ~/.ssh/id_rsa_work
Enter fullscreen mode Exit fullscreen mode

就这样!系统将根据目录位置使用合适的 SSH 配置,无需额外操作。

文章来源:https://dev.to/karolis_sh/how-to-manage-multiple-ssh-keys-for-github-gitlab-etc-4f98