sam*_*wal 5 mercurial tortoisehg bitbucket subrepos mercurial-subrepos
我在TortoiseHg中有以下子库结构:
/MainFolder/
/MainFolder/SubFolder1
/MainFolder/SubFolder2
Run Code Online (Sandbox Code Playgroud)
MainFolder是bitbucket上的私有存储库SubFolder1是bitbucket上的私有存储库SubFolder2是bitbucket上的私有存储库
MainFolder中的.hgsub文件如下所示:
SubFolder1 = SubFolder1
SubFolder2 = SubFolder2
Run Code Online (Sandbox Code Playgroud)
MainFolder中的文件.hgsubstat也有有效的guid和子存储库名称.
问题是每当我尝试向MainFolder推送bitbucket时,首先它会推送MainFolder,然后是SubFolder1,但是当它到达SubFolder2时,TortoiseHg会抛出错误"abort:repository is unrelated".
当我在bitbucket上检查我的MainFolder存储库时,它实际上有SubFolder1的内容(它应该作为子存储库列在那里).
我如何解决这个问题,以便将MainFolder正确上传为父存储库,并将SubFolder1和SubFolder2列为bitbucket上的子存储库?
bitbucket文档中显示的示例需要重命名存储库,以便将所有存储库命名为MainRepository-SubRepository.我不想重命名我的所有存储库,因此修改了正则表达式,如下面的示例所示,现在它可以正常工作.此版本不需要存储库名称中的破折号分隔符,可以单独命名主存储库和子存储库.示例.hgsub看起来像这样:
SubFolder1 = SubFolder1
SubFolder2 = SubFolder2
[subpaths]
(https://(?:[^@]+@)?bitbucket\.org/[^/]+)(/[^/]+)/(.*) = \1/\3
Run Code Online (Sandbox Code Playgroud)