version-control - 替换现有 Mercurial 提交数据中的电子邮件地址

标签 version-control mercurial

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

最佳答案

如果不重写历史就无法做到这一点。 Mercurial 存储库中的每个变更集 ID 都是根据变更集数据计算出的加密哈希值。本质上,在每个受影响的变更集中,更改电子邮件地址就像更改其中一个文件的内容一样。

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

要进行实际转换,内置 convert extension--authors map我相信应该对你有帮助。它将创建具有固定作者姓名的存储库副本。

关于version-control - 替换现有 Mercurial 提交数据中的电子邮件地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10863517/

相关文章:

version-control - 版本控制实践

version-control - 我应该将我的输出文件放在源代码管理中吗?

git - 将更改的文件从功能 merge 到修补程序 git 流

mercurial - 如何让 hg 在 cygwin/windows 上提示输入我的 HTTP 身份验证用户名/密码?

FTP 上的 Mercurial 存储库

java - 为 IntelliJ 中的项目初始化 Mercurial

Eclipse Clearcase 插件 : Error making file(s) writable

git - 反正有没有查看所有以前的 GIT 还原

security - 我可以禁用 Mercurial 通过 HTTP 进行克隆/拉取吗?

mercurial - Mercurial 中的多个头具有不同的变更集