更改所有提交的提交元数据



假设您创建了一个git repo并提交了几项更改,但随后您意识到您的全局用户名和电子邮件地址设置不正确,需要更改所有提交。如何做到这一点?这和更改全局设置,然后进行git rebase --interactive一样容易吗?

现在,如果回购被推送到GitHub会怎样。幸运的是,没有其他人对该回购进行更改或分叉。最简单的修复方法只是在GitHub上对回购进行核攻击,然后重新创建它吗?

您可以像使用git filter-branch一样(修改"新名称"one_answers"new@email.com"):

git filter-branch --commit-filter 'export GIT_AUTHOR_NAME="New Name"; export GIT_AUTHOR_EMAIL="new@email.com"; git commit-tree "$@"'

如果你不想做整个分支,你可以在最后添加一个修订范围(reva不会被触摸):

git filter-branch --commit-filter 'export GIT_AUTHOR_NAME="New Name"; export GIT_AUTHOR_EMAIL="new@email.com"; git commit-tree "$@"' reva..revb

最新更新