3

我正在开发一个带有 git 版本控制的项目。它有很多贡献者。在项目的最初几天,许多提交都是在没有作者的情况下进行的。我读了这篇文章,还有这篇文章。我已经尝试过,git rebase -i <Original commit SHA>但是我用标签标记的所有提交edit都有合并冲突需要解决!我考虑调用rerere以使用旧修复程序,但由于rerere更改被缓存并且我最初没有true在 gitconfig 中将其设置为,所以这里不是一个选项。

如果没有逐个提交并重新解决合并冲突,我能做些什么来更改那些早期提交的作者?

4

2 回答 2

1

你参考提到的帖子rebase -i,也是git filter-branch

您应该尝试这种git filter_branch方法,它不会重新应用每个提交,也不必解决合并冲突。

不过,就像变基一样,这会改变你的历史,你必须push --force得到最终结果。

于 2013-10-23T07:45:09.890 回答
0

我想你会帮助这个参数--author。因此,如果您已经合并提交,只需写入:

git commit --amend --author="Foo Bar <foo@example.com>"
于 2014-02-12T16:59:39.317 回答