当前位置: 首页 > news >正文

Git怎么配置多账户SSH key区分不同公司仓库?

最稳妥的做法是通过 SSH 配置文件区分不同宿主对应的密钥,而不是频繁切换全局密钥。

先说结论:利用 SSH 客户端的 Config 文件为不同域名绑定不同 IdentityFile,实现自动匹配。

  • 适合:同时维护个人 GitHub 和公司 GitLab 等多个账户的场景
  • 先准备:生成独立的密钥对并确认公钥已添加到对应平台
  • 验收:使用 ssh -T 命令测试不同 Host 别名是否识别正确身份

命令速用版

# 生成公司密钥(注释带上邮箱便于区分)
ssh-keygen -t ed25519 -C "work@example.com" -f ~/.ssh/id_ed25519_work# 编辑 SSH 配置文件
vim ~/.ssh/config# 测试连接(看到 welcome 字样即成功)
ssh -T git@github-work

为什么会这样

Git 本身不管理密钥,它调用系统的 SSH 客户端进行通信。默认情况下,SSH 会尝试使用 ~/.ssh/id_rsa 或 id_ed25519 等默认密钥。当多个账户需要不同密钥时,如果不加干预,SSH 可能会错误地发送个人密钥去请求公司仓库,导致 Permission denied。

通过配置 ~/.ssh/config,我们可以告诉 SSH 客户端:当访问特定 Host 别名时,强制使用指定的私钥文件。Git 远程地址中的域名部分改成这个别名,就能间接实现密钥隔离。

分步处理

1. 生成新密钥对
如果已有密钥可跳过,但建议为公司账户生成独立文件,避免混淆。

ssh-keygen -t ed25519 -C "your_work_email@company.com" -f ~/.ssh/id_ed25519_work

按提示输入 passphrase(可选),生成后会将公钥 ~/.ssh/id_ed25519_work.pub 内容添加到公司 Git 平台的 SSH Keys 设置中。

2. 配置 SSH Config
编辑 ~/.ssh/config 文件,如果没有则新建。注意权限需为 600。

Host github.comHostName github.comUser gitIdentityFile ~/.ssh/id_ed25519_personalHost github-workHostName github.comUser gitIdentityFile ~/.ssh/id_ed25519_work

这里 Host 是自定义别名,HostName 是真实服务器地址。个人账号沿用原域名,公司账号使用别名。

3. 添加密钥到代理
确保 ssh-agent 加载了新密钥,否则每次连接都可能失败。

ssh-add ~/.ssh/id_ed25519_work

4. 修改 Git 远程地址
进入公司仓库目录,将 remote URL 中的域名改为配置的 Host 别名。

git remote set-url origin git@github-work:username/repo.git

怎么验证是否生效

使用 verbose 模式测试 SSH 连接,观察使用的密钥文件路径。

ssh -T -v git@github-work

输出日志中寻找 Offering public key: .../id_ed25519_work 字样。如果看到 Hi xxx! You've successfully authenticated,说明身份识别正确。

常见坑

  • 文件权限错误:~/.ssh/config 权限必须是 600,私钥文件也必须是 600,否则 SSH 会忽略配置或报错。
  • Host 混淆:Git 远程地址必须匹配 Config 中的 Host 字段,而不是 HostName。
  • 缓存干扰:修改配置后,如果 ssh-agent 缓存了旧密钥,可能需要先 ssh-add -D 清除缓存再重新添加。
  • 大小写敏感:部分 Git 服务对 URL 中的用户名大小写敏感,配置时保持一致。

参考来源

  • GitHub Docs, "Connecting to GitHub with SSH", https://docs.github.com/en/authentication/connecting-to-github-with-ssh
  • OpenSSH Manual, "ssh_config", https://man.openbsd.org/ssh_config.5

原文链接:https://www.zjcp.cc/ask/11166.html

http://www.jsqmd.com/news/822319/

相关文章:

  • 2026厂房暖通中央空调工程避坑指南:如何选对设计施工一体化承包商? - 品牌2025
  • 2026上海商用与保鲜冷库安装公司推荐,设备厂家全解析 - 品牌2025
  • 1010元/克节点,台州黄金回收之选全网实测对比 - 福正美黄金回收
  • 2026年AI搜索优化实战指南:品牌GEO布局方法与服务商甄选全攻略 - 博客万
  • 厂房恒温恒湿工程总包与改造扩建:三大核心痛点及高标准服务商 - 品牌2025
  • 2026防腐钢管产品推荐,TPEP防腐钢管,环氧粉末防腐管,环氧煤沥青防腐钢管,三油两步防腐管,防腐螺旋钢管产品优选指南! - 品牌鉴赏师
  • Windows 下切换 Java 环境太复杂了,我做了个 cli 工具,可以快速安装,切换 Java 版本
  • 厂房管道安装工程,如何找到靠谱承包商?高标准服务商的五大核心特征 - 品牌2025
  • 「2026年5月独家测评」上海亨得利高端手表养护有什么特点?恒隆广场/港汇恒隆双店真实体验,同步解析南京、无锡、北京、深圳、杭州官方售后养护特点与避坑要点 - 亨得利腕表维修中心
  • 去皱纹用什么护肤品可以改善 抗老护肤避坑指南|认准 CA 逆时光不花冤枉钱 - 全网最美
  • 王府井实况:劳柜空空二手满,五家平台实测 - 奢侈品回收测评
  • 进口电脑验光仪品牌TOP3推荐 - 品牌推荐大师1
  • 如何用嘎嘎降AI处理新闻学论文:媒体分析密集的新闻学毕业论文降AI免费完整操作教程 - 还在做实验的师兄
  • 台州黄金回收怎么选?看完这篇不纠结 - 福正美黄金回收
  • 2026年降AI工具Turnitin专项实测:五款主流工具Turnitin检测通过率完整横评分析报告 - 还在做实验的师兄
  • 购物卡回收攻略:沃尔玛卡轻松变现! - 团团收购物卡回收
  • 上海江诗丹顿保值率怎么样?纵横四海五年涨幅52.27%真相与二手市场回收价格影响因素全解析 - 亨得利官方维修中心
  • 刚过本科线也能上好大学!2026 河南民办本科优质院校盘点 - 深度智识库
  • 脸蛋松弛没弹性怎么恢复 全网测评抗衰好物|CA 逆时光口碑稳居前列 - 全网最美
  • 2026初三如何备考香港国际学校?专业辅导机构推荐与备考时间规划 - 品牌2025
  • 冬虫夏草哪个品牌品质最好?2026年深度评测:冠军只有一个 - 速递信息
  • 2026知名螺蛳粉品牌加盟排名 - 速递信息
  • 青岛纹眉哪家好?2026 深度测评推荐:青岛纹绣世家(7 家直营全覆盖) - 小艾信息发布
  • 2026年宁波黄金回收TOP5盘点,透明交易无套路 - 奢侈品回收测评
  • 实验室高温烧结用高温实验炉:知名品牌技术强,非标定制厂家直供 - 品牌推荐大师
  • 实地揭秘无锡亨得利官方售后维修优势是什么?附南京走时调校/上海高端养护/北京机芯卡顿/深圳抛光修复/杭州氧化修复六大城市深度对比 - 亨得利腕表维修中心
  • 1010元/克节点,杭州黄金回收之选全网实测对比 - 福正美黄金回收
  • 2026年香港留学中介十强哪家靠谱,985背景者优选推荐 - 速递信息
  • 培洋机械设备:山东比较好的锻压设备回收推荐哪几家 - LYL仔仔
  • 食品科学论文降AI工具免费推荐:2026年食品科学毕业论文免费4.8元降AI知网达标完整方案 - 还在做实验的师兄