2017-06-15 57 views

回答

9

你不能(至少不重写历史 - 这是非常不建议的)。

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

投稿人不是合作者。

合作者贡献者由库所有者授权有直接的(通常写)访问资源库,这意味着他们不需要到餐桌的存储库,并可以将它们分配到除其他事项外的问题。

+0

如果您撤销其访问权限但保留其提交,他们会从主页上的该号码中删除,会发生什么情况?如果不是,如果你还删除或重命名他们的提交? –

+0

如果您撤消他们的访问号码。如果你删除他们的提交,我会相信的,也许会重命名它们。 [但要记住重命名和删除提交的重要影响](https://stackoverflow.com/questions/1491001/what-are-the-practical-consequences-of-rewriting-git-history) –

+0

我明白所有那在我看来,你明确地说“不,不能做”,你的评论现在说“是的,我认为你可以做到,只是以另一种方式做”。如果他的主要目标是摆脱贡献者,那么在我看来,毕竟有一种办法。 –

2

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

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

git filter-branch --env-filter ' 
if [ "$GIT_AUTHOR_NAME" = "OLD NAME" ]; then \ 
    export GIT_AUTHOR_NAME="NEW NAME" GIT_AUTHOR_EMAIL="[email protected]"; \ 
fi 
' 

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