Git 有效地替换电子邮件地址

3
我已经在一个Git存储库上工作了一段时间,选择与其他人共享。我在提交中使用了我的个人电子邮件地址,并尝试将其设置为另一个电子邮件地址,然后再将存储库公开。我已经阅读了一些类似于SO 750172的线程,并通过使用git log来更改了它,但是我仍然可以在.git/logs/HEAD.git/logs/refs/heads/master中使用grep找到我的旧电子邮件。

有没有办法将其从那里删除,而不会丢失历史记录呢?

如果只有一个存储库副本,这是否有所不同?

1个回答

4

参考日志将包含指向您重写历史以更改电子邮件地址之前的提交版本的指针,这就是为什么旧电子邮件地址在其中仍然可见的原因。这些引用是本地存储在您的代码库中,这些引用或它们所指向的提交都不会被推送到远程存储库。因此,您已经清理了将公开的历史记录。

如果您确实确定不需要返回并且想要清理参考日志,可以运行以下命令:

git reflog expire --expire=now --all

但这样做会删除一个为安全而存在且并非必需的功能。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接