如何从已将 SSH 密钥添加到工作相关 GitHub 帐户的办公计算机上处理个人 GitHub 存储库?
Posted
技术标签:
【中文标题】如何从已将 SSH 密钥添加到工作相关 GitHub 帐户的办公计算机上处理个人 GitHub 存储库?【英文标题】:How to work on personal GitHub repo from office computer whose SSH key is already added to a work related GitHub account? 【发布时间】:2012-08-17 12:12:52 【问题描述】:我想从办公计算机上处理我的个人 GitHub 存储库,其 SSH 密钥已添加到与工作相关的 GitHub 帐户。
就我而言,我将无法将我的个人 GitHub 帐户添加为“工作”帐户项目的协作者。我在想我可以在我的办公室计算机上添加一个新的密钥对,并将其添加到我的个人 GitHub 帐户中。但是我能以这种方式无缝地处理“工作”和“个人”回购吗?最好的方法是什么?
【问题讨论】:
您是否尝试过将相同的 SSH 密钥添加到您的个人 GitHub 帐户以查看它是否有效? @Blender - 是的,我试过了,因为我办公室电脑的 SSH 密钥已经添加到另一个 GitHub 帐户,它不会让我将相同的密钥添加到我的个人 GitHub 中。它说“密钥已在使用中” 【参考方案1】:您可以添加任意数量的 public:private 密钥,想法是在 %HOME%/.ssh/config 文件中注册它们,以便您使用 ssh 地址定义远程,例如:
workgh:Work
persgh:Personal
请参阅“change github account mac command line”作为ssh/config
文件的示例。
在你的情况下:
#Personal GitHub
Host persgh
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_perso
#Personal Work
Host workgh
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_work
在不同的环境中重复使用相同的 ssh 密钥通常是不受欢迎的。 请参阅this SO question 以非交互方式生成多个 ssh 密钥。
【讨论】:
我不明白!如何区分同一主机以了解何时使用 workRSA,何时使用 homeRSA!? @Dr.jacky 因为私钥:每个条目都引用自己的私钥,其公钥已注册给不同的用户。【参考方案2】:来自 Ruby 背景,我最终使用了“gas” ruby gem。添加 git 用户是一件轻而易举的事,它可以在终端上使用一个简单的命令来切换 git 用户和键:
gas use <nickname>
这是 gem 的链接:https://github.com/walle/gas
有关其功能的视频:http://www.youtube.com/watch?v=-W2vSTwJWJc
【讨论】:
以上是关于如何从已将 SSH 密钥添加到工作相关 GitHub 帐户的办公计算机上处理个人 GitHub 存储库?的主要内容,如果未能解决你的问题,请参考以下文章