将 Mercurial 存储库的历史扩展到过去

发布于 2024-08-24 13:01:53 字数 147 浏览 2 评论 0原文

我已经开始开发一个项目(使用 CVS),方法是下载其源代码、创建一个新的 HG 存储库并使用它。然而,原来的项目现在也已转换为使用 Mercurial。 我可以在首次提交到存储库之前添加其历史记录吗?

或者,如何将我的存储库推送到远程存储库以保留两者的历史记录?

I've started development on a project (which used CVS) by downloading its sources, creating a fresh HG repository, and using that. However, the original project now has converted to using Mercurial as well.
Can I add its history before my initial commit into my repository?

Alternately, how can I push my repository to the remote one so as to preserve the history of both?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

晌融 2024-08-31 13:01:53

如果不更改每个变更集的哈希 ID,则无法更改当前存储库的祖先,这本质上使其成为不同的存储库。 “左父级”和“右父级”的哈希值是“变更集是谁”的一部分,因此为当前存储库中的第一个无父级变更集提供父级将更改第一个变更集的哈希值,因为它是第二个变更集的父级将更改它的哈希值等等。

如果您同意更改现有存储库的哈希值(如果其他人在野外拥有它的克隆,则您不应该这样做),您可以使用转换扩展,甚至只是导入/导出将您的存储库附加到他们新转换的回购协议。

You can't change the ancestors of your current repo without altering the hash id's of every changeset, which essentially makes it a different repo. The hash of "left-parent" and "right-parent" are part of "who a changeset is" and so giving a parent to the first parent-less changeset in your current repo would change that first changeset's hash, which since it's the parent of the second changeset would change it's hash and so on.

If you're okay with changing the hashes of your existing repo (which you shouldn't be if anyone else out in the wild has clones of it) you could use the convert extension or even just import/export to attach your repo to the their newly converted repo.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文