理想的解决方案包括保留本地 Mercurial 存储库,并且仅将此本地存储库与现有的 bitbucket Mercurial 远程存储库一起使用。
使用Hg-Git 之类的插件,您至少可以从 Mercurial 推送到 Git 服务器存储库并从中拉取,允许您从 GitHub 存储库拉取到本地 Mercurial 存储库。
然后,您可以从该本地(Mercurial)存储库中照常使用 bitbucket 远程存储库。
OP补充说:
它对我不起作用,所以我尝试将 git repo 转移到 hg repo 并从这个 repo pull 到我的工作 repo 并进行更改 - 但它说:abort:repository 是不相关的 - 但我从中合并了很多。这里有什么帮助吗?
这是有道理的,如果两个 repos 都是单独开发的,那么您不能将 2 个(mercurial)repos 推/拉到另一个。这在“了解 Mercurial
”
页面底部得到了证实,并在博客文章中进行了详细说明:“ Mercurial 不能做什么:Subtree Repos ”。
更实际的解决方案是创建一个额外的存储库(“父级”),其中您的两个存储库声明为嵌套存储库。
它将保持两个存储库的独立性,允许从您的第二个 mercurial 存储库推回 GitHub 存储库。
如果您不必推回 GitHub,但确实希望有一个用于合并常用文件的存储库,那么您可以查看“使用 Mercurial 从不相关的存储库中合并提示”,但这要复杂得多。
我宁愿:
- 将两个存储库分开
- 从第一个中删除您需要在第二个中合并的公共文件。
- 在第二个文件中报告并合并这些常见文件。