2

我有一个 Mercurial (hg) 存储库,其中包含错误(格式错误)的电子邮件地址附加到我推送的所有提交中。我可以直接访问远程服务器上的存储库文件(通过 ssh)。有什么方法可以直接修改存储库文件以更正提交历史记录中格式错误的电子邮件的每个实例?

4

1 回答 1

3

如果不重写历史记录,您将无法做到这一点。Mercurial 存储库中的每个变更集 ID 都是根据变更集数据计算的加密哈希。从本质上讲,更改电子邮件地址与更改其中一个文件的内容相同——在每个受影响的变更集中。

你真的需要修复那封电子邮件吗?如果你通过重写历史来做到这一点,你最终会得到一个本质上是一个新的存储库的东西。您的开发伙伴将不得不放弃他的代表副本,转而使用重新创建的代表。

我相信,要进行实际转换,带有地图的内置convert扩展应该可以帮助您。它将创建具有固定作者姓名的存储库副本。--authors

于 2012-06-02T16:05:43.347 回答