2012-11-13 29 views
0

如何合并git用户?如何合并git用户?

我做了使用了不正确的用户名多次提交,现在他们都在回购历史显示,我想与我将使用Git仓库我的真实姓名合并它们。

我该怎么做?

回答

1

我有这个脚本,我用它来编辑我的历史。你只可以通过电子邮件或其他任何更改名称if子句或过滤器:

git filter-branch --commit-filter ' 
     if [ "$GIT_AUTHOR_NAME" = "Jimmy McNulty" ]; 
     then 
       GIT_COMMITTER_NAME="Jimmy McNulty"; 
       GIT_COMMITTER_EMAIL="[email protected]"; 
       GIT_AUTHOR_NAME="Jimmy McNulty"; 
       GIT_AUTHOR_EMAIL="[email protected]"; 
       git commit-tree "[email protected]"; 
     else 
       git commit-tree "[email protected]"; 
     fi' HEAD 
+0

这对我来说很好。上次我尝试类似的东西时,它不适合我。谢谢! –

0

如果只有几个提交,你可以使用互动的rebase和力量作家,每次提交者。

注意,它会取消分支的顶端和任何人都可以在它上面,所以,如果你不单干,已经推某处你的提交,这是每个人的痛苦。

您也可以重写使用git filter-branch你的历史记录(但你必须弄清楚自己该怎么做,因此备份的东西第一;-))(编辑:没关系,你不必身影,或许,你可以从Oin的答案开始)。