Mercurial的设计与部分签出不兼容。我没有看过hgsubversion
内部,但我希望支持部分结账不是一件容易的事情,也不是实施的优先事项。还要注意的是,官方hgsubversion wiki指出:
Right now, you can only clone repositories that use a more-or-less standard Subversion layout. That is, the default location where work is done is called trunk
, branches are located in a sibling of that directory called branches
. Tags are expected to be another sibling of trunk
called tags
, but that is configurable.
这再次表明,克隆一个子目录将可能违反这些假设,因为该子目录没有trunk
和branches
子文件夹。
作为一个解决方法,考虑做一个完整的结帐,然后将其拆分成subrepos(保留历史),如this question所示。如果你想继续与svn进行双向同步,这将需要你分两步进行,首先将subrepos中的所有更改导入到hg镜像中,然后将这些更改推送到svn。
ssl未知协议是由于在mercurial.ini文件中有一个无效的代理配置。但是我们仍然需要能够选择一个特定的文件夹进行克隆 – Bernard
你能否确认没有子文件夹的完全相同的命令,即'hg clone https:// username @ serverAddress/svn/MainRepo/--insecure',可以正常工作现在?请更新您的问题以显示现在实际发生的情况。 – alexis