如何删除贡献者在项目主页中的显示:
链接https://help.github.com/articles/removing-a-collaborator-from-a-personal-repository/表示可以在设置中使用,但我没有看到任何合作者:
答案 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
功能。本质上,创建存储库的副本并交换存储库名称,就像通过以下步骤交换变量一样。
创建一个新的replica
存储库
从original
存储库中复制樱桃精选,其中只有具有预期作者的提交。
将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,但没有帮助。最后,我不得不创建/重命名/删除原始存储库。