【发布时间】:2011-05-02 22:53:44
【问题描述】:
显然,我很久以前在设置 git 时打错了我的电子邮件,因此我的电子邮件在许多存储库中都不正确(我输入了 0 而不是 o)。我签署了我所有的提交,所以多年来几乎每个 repo 中的每个提交都说signed off by: <xxx0@foo.bar> 而不是signed off by: <xxxo@foo.bar>。现在我不能只切换我的电子邮件,所以我想切换这些提交消息。
我已经完成了git config --global user.email "xxxo@foo.bar",所以这不应该成为未来的问题。
首先,是否有可能在不把事情搞砸的情况下大规模地更改消息?我已经将这些更改推送到多台服务器,其他人已经撤消了这些更改。
其次,有没有一种方法可以让我在脚本中快速做到这一点?即:
foreach(commit in log)
{
change "<xxx0@foo.bar>" to "<xxxo@foo.bar>"
}
感谢所有帮助,谢谢!
【问题讨论】:
-
问题真的那么大吗?有多少人拥有您的代码但不知道如何联系您?如果它是一个开源项目,您可能更喜欢通过项目网站进行交流。如果它是一个商业项目,完全陌生的人可以访问您的代码并且无法与您联系,那么您可能已经失去了工作。
-
我会说这是一个相当大的问题。很多项目都是仅存在于 github 上的小型开源项目。其中一些只是我从事过的工作,因此一种不适用于更大项目的方法可能在那里还可以,但其中一些有多个贡献者并且已经退出多年。如果我不觉得这是个大问题,我会花时间把这些都写出来吗?
标签: git commit commit-message