【问题标题】:git effective replace email addressgit 有效替换邮箱地址
【发布时间】:2012-10-30 16:46:19
【问题描述】:

我在 git 存储库上工作了一段时间,并选择与其他人共享它。在我将存储库公开之前,我已使用我的个人电子邮件地址进行提交,并尝试将其设置为另一个。 我读过一些类似SO 750172 的帖子,它适用于git log,但我仍然可以在.git/logs/HEAD.git/logs/refs/heads/master 中找到我的旧电子邮件。

有没有办法在不丢失历史记录的情况下也将其从那里删除?

目前只有一个存储库副本,如果有影响的话。

【问题讨论】:

    标签: git privacy git-filter-branch


    【解决方案1】:

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

    如果您确实确定不需要返回并且还想清理 reflog,则可以运行:

    git reflog expire --expire=now --all
    

    但这将删除一个为了安全而存在的功能,并且绝对没有必要。

    【讨论】:

      猜你喜欢
      • 2013-06-25
      • 2013-02-28
      • 1970-01-01
      • 2015-04-29
      • 1970-01-01
      • 1970-01-01
      • 2020-03-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多