请向我解释将 git 存储库作为子存储库添加到 hg 存储库的正确方法。
我只需要有可能
- 克隆 hg 存储库及其所有子存储库(git 和 hg);
- 不包含从 subrepo 到父 repo 的源代码,因为 subrepo 已经拥有自己的 (git) repo 并且与我分开开发。
我已经尝试了一些事情,现在我真的迷失了方向。我应该创建 hg subrepo 来保存 git subrepo 吗?哪个修订版.hgsubstate
(hg 或 git)指向?我应该将 git 代码提交到 hg subrepo 吗?为什么?
现在我正在尝试将https://bitbucket.org/espinosa/z025-gwt-maven-alternative-setup嵌入到https://bitbucket.org/cube54/mavemples/src中。此时在 bitbucket 上,此任务看起来已完成,但是当我克隆父(mavemple)存储库时,它会在我的工作目录中创建空的 hg 子存储库。
我的.hgsub
:
GWT_multiple_apps = GWT_multiple_apps
[subpaths]
GWT_multiple_apps = git://git@bitbucket.org:espinosa/z025-gwt-maven-alternative-setup.git
我的.hgsubstate
:
0000000000000000000000000000000000000000 GWT_multiple_apps
因此,当在 bitbucket 上单击修订号时,出现 404 错误,因为 git repo 的修订 000000000000 不存在。然后,如果我.hgsubstate
这样改变:
d35a3fb7e627b5598fb763f480e3f76932cf4232 GWT_multiple_apps
所以它指向 git repo 的实际负责人,而不是当我克隆我的 repo 时,我收到以下消息:
requesting all changes
adding changesets
adding manifests
adding file changes
added 10 changesets with 27 changes to 19 files
updating to branch default
cloning subrepo GWT_multiple_apps from https://georgy7@bitbucket.org/cube54/mavemples/git%3A//git%40bitbucket.org%3Aespinosa/z025-gwt-maven-alternative-setup.git
requesting all changes
adding changesets
adding manifests
adding file changes
added 10 changesets with 27 changes to 19 files
abort: unknown revision 'd35a3fb7e627b5598fb763f480e3f76932cf4232'!
而且,我的 hg subrepo 的 hgrc 文件包含以下内容:
[paths]
default = https://georgy7@bitbucket.org/cube54/mavemples/git%3A//git%40bitbucket.org%3Aespinosa/z025-gwt-maven-alternative-setup.git
如果我删除.hg
subrepo 文件夹中的文件夹,然后将 git repo 克隆到 subrepo 文件夹,则提交对话框中的 TortoiseHg 告诉我子存储库已删除。
所以我根本不知道我要做什么。