我有两个 GitHub 账户,其中一个是很久以前在我的工作中创建的,用户名与我工作的公司相关。
我还有另一个账户是我个人的 GitHub 账户,我不能停止使用。
我能合并这两个账户,这样我只需使用其中一个账户吗?
在 GitHub 上无法合并两个帐户,你可以将所有权转移至你的个人帐户。
goto >> Setting >>Transfer ownership
更多详细信息请参阅:https://help.github.com/articles/merging-multiple-user-accounts/
以下是更新的答案(适用于2019年)。
幸运的是,这是一个相对快速的过程,需要1)转移存储库所有权、2)管理(添加/删除/更改)帐户电子邮件地址和3)将大部分提交历史记录保留/转移到个人资料的贡献图中。
转移存储库所有权只需要几个步骤。
帐户之间的存储库转移包括所有问题、拉取请求、分支、星标,同时设置自动重定向以进行 git 和 http。不过,一旦转移完成,请记得更新您的远程起点 URL:git remote set-url origin new_url
Git提交历史记录、SAML和其他内容与您在GitHub和远程、本地设置中注册的电子邮件相关联。如果想将提交历史记录保存/转移到贡献图中,需要在要合并的用户帐户上添加原始的、作者的电子邮件地址/验证。
关于大多数历史转移的先前说明是指PR和问题,它们属于这种“灰色领域”的历史记录,当合并帐户时不会转移。
在将电子邮件添加到GH用户帐户并进行验证后,大多数提交历史记录将会转移。请允许GitHub花费一些时间来传播历史记录和贡献信息。
你删除帐户后,与原始拉取请求和问题历史记录相关的提交将丢失。这些 "会被归属给我们的“Ghost”用户,尽管这些问题/PR本身不会受到影响。”(来自GH支持)。如果您想了解更多信息,我撰写了一篇快速博客文章,介绍如何转移存储库所有权、添加电子邮件等 - 如何合并/组合两个(或多个)GitHub用户帐户。虽然GitHub概述了一个有限的"合并多个用户帐户"过程,这也在之前的答案中提到过,但它并不是一个完整的解决方案。它无法解决第三方存储库贡献中的所有权问题。
GitHub将显示来自已删除用户(即您根据GitHub的帐户合并建议摆脱的帐户)的评论作为“幽灵”用户的评论 - 但不会将它们归因于幸存的帐户。在此处查看更多详细信息:
https://help.github.com/articles/deleting-your-user-account/
因此,实际上截至2016年11月,没有一般方法可以完全合并一个帐户的所有贡献到另一个帐户。
GitHub提供了一个方便的命令行工具:hub
,可以在https://hub.github.com找到。
我写了一个例子,将您所有组织中的所有存储库移动到my_new_organisation_name
:
#!/usr/bin/env bash
orgs="$(hub api '/user/orgs' | jq -r '.[] | .login')";
repos="$(for org in $orgs; do hub api '/orgs/'"$org"'/repos' | jq -r '.[] | .name';
done)"
for org in $orgs; do
for repo in $repos; do
( hub api '/repos/'"$org"'/'"$repo"'/transfer'
-F 'new_owner'='my_new_organisation_name' | jq . ) &
done
done
my_new_organisation_name
设置为替代用户名,移除外循环,并使用以下代码替换repos=
行:repos="$(hub api /users/SamuelMarks/repos | jq -r '.[] | .name')"
编辑:如果您喜欢GUI,可以使用这个GUI。更多信息请参见https://dev59.com/ArHma4cB1Zd3GeqPN5l8#54549899