git - 通过 SSH 密钥使用多个 Github 帐户
问题描述
我最近获得了访问 Github 存储库的权限,我将work
通过 SSH 密钥访问该存储库。
我为我的帐户(我将调用me
它)使用 SSH 密钥,这没有给我带来任何问题,并且可以继续为该帐户下的任何存储库正常操作。
我的config
文件是这样设置的
Host me.github.com
HostName github.com
User git
IdentityFile ~/.ssh/me
Host work.github.com
HostName github.com
User git
IdentityFile ~/.ssh/work
当我尝试使用ssh-add -l
两个密钥时,两个帐户都添加了正确的公钥。
发送命令ssh -T git@github.com
返回Hi me! You've successfully authenticated, but GitHub does not provide shell access.
,但如果我发送命令ssh -T git@work.github.com
,它会以正确的方式响应。
fetch 和 push 的来源都设置为 ssh 链接,由git remote -v
我已经尝试遵循这个要点、这篇 Medium 文章和这个 StackOverflow 问题,以及其他一些没有成功的问题。
我可能还应该包括我在通过 Chocolatey 安装的 Windows 10 LTSB build 14393、Powershell 5.1、git 版本 2.19.1.windows.1 和 posh-git 0.7.3.1 上运行。
解决方案
首先,检查您的两个 SSH 密钥:
ssh -Tv me.github.com
ssh -Tv work.github.com
其次,您可以在 repo 中添加两个 URL 以进行测试:
git remote set-url origin me.github.com:<auser>/<arepo>
git remote origin originWork work.github.com:<auser>/<arepo>
git@
(网址中不需要)
从那里,您可以使用一个或另一个原点来拉/推。
推荐阅读
- php - 如何在ajax循环中调用codeigniter函数
- python - 试图创造混乱游戏
- git - Azure Repos 文件夹/目录比较
- c# - 如何在 C# 中生成 12AM 和 6PM 之间的随机时间?
- android - Android - 视图不是 CoordinatorLayout (BottomSheet) 的子视图
- sql - SQL 脚本,STOCK 返回相同的结果
- java - 尝试创建循环时不断收到 java.util.NoSuchElementException 错误
- c - 交叉编译的根文件系统中未声明的变量
- c# - 在应用程序的另一部分检索 IApplicationBuilder 和 IWebHostEnvironment
- javascript - 如何修复设计中给出的滑块的导航和点