从github.com删除贡献者?

时间:2017-06-15 08:57:37

标签: git github

如何删除贡献者在项目主页中的显示:

enter image description here

链接https://help.github.com/articles/removing-a-collaborator-from-a-personal-repository/表示可以在设置中使用,但我没有看到任何合作者:

enter image description here

4 个答案:

答案 0 :(得分:10)

你不能(至少没有重写历史 - 这是非常不推荐的)。

这些用户在您的存储库历史记录中提交了提交,因此他们添加了代码行。即使您删除了所有代码行,它们仍将显示为贡献者。

贡献者不是合作者。

协作者贡献者,由存储库所有者授权对存储库进行直接(通常是写入)访问,这意味着他们不需要对存储库进行分支,他们可以被分配给其他事项。

答案 1 :(得分:9)

我不小心从旧帐户推送了提交。即使我删除了提交,旧帐户仍然在贡献者列表中。我不得不从 GitHub 中删除旧帐户以使其从列表中消失。 Gah,我们为强迫症所做的事情...

答案 2 :(得分:3)

您无法删除它,但您可以更改其名称(到您的)。但是,我强烈建议不要这样做,因为这会影响所有其他合作者和贡献者(见下文)。

详细描述here。简而言之,您必须使用filter-branch,例如通过以下脚本:

git filter-branch --env-filter '
if [ "$GIT_AUTHOR_NAME" = "OLD NAME" ]; then \
    export GIT_AUTHOR_NAME="NEW NAME" GIT_AUTHOR_EMAIL="new.name@mail.com"; \
fi
'

为什么最好不的原因 - 它带来了一些严重的副作用,例如使Peter Reid提到的所有后续提交哈希值无效。

答案 3 :(得分:2)

假设已经按照所有正确的意图进行了操作,并且您是存储库的所有者-您可以在存储库上使用rename功能。本质上,创建存储库的副本并交换存储库名称,就像通过以下步骤交换变量一样。

  1. 创建一个新的replica存储库

  2. original存储库中复制樱桃精选,其中只有具有预期作者的提交。

  3. original存储库重命名为to_be_deleted,将replica重命名为original

可以通过以下步骤选择原始存储库中的提交。

  • git remote add repo2 https://github.com/mygit/original.git
  • git pull repo2
  • git cherry-pick <commit>
  • git push

贡献者实质上是资源库中任何提交的作者。我曾经不小心将错误的电子邮件放在存储库中提交的作者列表中,而github开始在存储库中显示新的贡献者。我尝试了reverting the commit,但没有帮助。最后,我不得不创建/重命名/删除原始存储库。