如何在git repo中组合用户?

时间:2013-01-06 10:44:50

标签: git git-config

我有一个git repo,我在不同的计算机上提交,所以我最终显示为2个不同的贡献者,但实际上它是一个用户 - 我。我如何将这些用户合二为一?

3 个答案:

答案 0 :(得分:2)

您必须在两台计算机中将用户名和电子邮件设置为相同:

git config --global user.name <name>
git config --global user.email <email>

如果您想更改现有提交,请注意您将重写历史记录。

您可以参考以下答案:How do I rewrite committer names in a git repository?

答案 1 :(得分:1)

@SergiuDumitriu关于将所有电子邮件添加到您的帐户 https://github.com/settings/emails 是正确的。这样,您所有承诺的工作(来自不同的电子邮件)将链接到您的GitHub帐户,并汇总到您贡献的每个存储库的图表部分。

但是,为了在计算机上的本地存储库中进行此操作,您必须将.mailmap文件提交到存储库的根目录,该文件将所有电子邮件链接在一起。一旦可以在 git shortlog 文档中找到有关此git功能和文件格式的更多信息。

这样运行$ git shortlog -s -n会正确汇总您的所有身份。

答案 2 :(得分:0)

如果您关心的是将所有提交链接到您的GitHub帐户,那么只需将两个电子邮件地址添加到您的帐户即可。

如果你真的想修改所有现有的提交,不要那样做,除非代码还没有被其他人真正使用过,因为你要重写每次提交,存储库中的整个历史记录。

如果您仍想这样做,则应使用git-filter-branch --env-filter,如this answer中所示。