Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
协调多个相关mercurial存储库版本的推荐方法?_Mercurial_Versioning_Tortoisehg_Bitbucket - Fatal编程技术网

协调多个相关mercurial存储库版本的推荐方法?

协调多个相关mercurial存储库版本的推荐方法?,mercurial,versioning,tortoisehg,bitbucket,Mercurial,Versioning,Tortoisehg,Bitbucket,经过几个小时的阅读和反复尝试,我终于明白了。Mercurial并不真的想做SubRepos…至少不想做Ortoisehg和Bitbucket。如果我弄错了,你不想因为类似于“当然行了,你没有读过官方文件吗?”的粗鲁回答而被否决,那么请提供一个简单的例子,说明如何通过将成功推到Bitbucket上的TortoiseHg latest来做到这一点。也许是一个利用mercurial、bitbucket和subrepos的开源项目 综上所述,如果我们将类库保持在单独的repo中,推荐的方法是不使用子re

经过几个小时的阅读和反复尝试,我终于明白了。Mercurial并不真的想做SubRepos…至少不想做Ortoisehg和Bitbucket。如果我弄错了,你不想因为类似于“当然行了,你没有读过官方文件吗?”的粗鲁回答而被否决,那么请提供一个简单的例子,说明如何通过将成功推到Bitbucket上的TortoiseHg latest来做到这一点。也许是一个利用mercurial、bitbucket和subrepos的开源项目

综上所述,如果我们将类库保持在单独的repo中,推荐的方法是不使用子repo(“作为最后手段”),为所有依赖mercurial repo捕获版本的推荐方法是什么,这样我就可以快速将所有依赖repo跳转到正确的版本,以修复bug等等

我怀疑我会使用标签来标记一个版本。那么,建议手动转到所有库并使用公共版本标记标记每个repo,然后手动恢复到所有程序集的该标记,这是一种方法吗


请避免使用所有关于工作流管理复杂性的技术术语。关于这一点,有大量的阅读。我希望有一个简单的单一主exe项目与几个DLL类库

感谢@SteveKaye,我有了一个有效的解决方案。当使用TortoiseHg“添加子存储库”时,TortoiseHg将.hgsub文件格式化为如下所示

subrepo = subrepo
而不是像他那样

subrepo = ../subrepo
如果有人想评论为什么需要相对的“./”,那就太好了。我的目录结构如下所示:

MainRepo/
         .hgsub
         SubRepo/
         SubRepo2/
如果“./SubRepo”与.hgsub相对,那么../是否会进入一个目录,然后查找名为SubRepo的文件夹?哦,好吧,我可以证实:)或者如果..我可以改正/


有了Steve的例子,我看到了问题所在。

对我来说,似乎需要一个Mercurial扩展来处理引用的(而不是子)存储库。我在这里提供了一个简单的例子:我在克隆、更新和从主repo推送它方面没有任何问题。@SteveKaye感谢您提供了这个简单的例子。你能回顾一下我的步骤,看看我是否按错误的顺序做了什么吗?1) 已创建MainRepo文件夹(右键单击->此处创建存储库)2)已提交更改3)在MainRepo内部创建名为SubRepo的文件夹(右键单击->此处创建存储库)4)已提交对SubRepo的更改5)对SubRepo2重复3和4 6)在TortoiseHg中,将SubRepo和SubRepo2添加为SubRepos 7)提交对MainRepo的更改8)推送到BitBucket。。。存储库在BitBucket中是不相关的,我从新的存储库开始。这将是最初的推动Bitbucket@SteveKaye再次感谢你的例子。我发现TortoiseHg将.hgsub文件格式化为“subrepo=subrepo”,而不是像您的示例“subrepo=../subrepo”。在Windows世界中,“./”表示它将从.hgsub文件上升一级,但事实并非如此。我有我的subrepo目录设置像你一样。我相信我有一个有效的版本。非常感谢!我自己也没有理由去尝试,但听起来好像有些人已经有了很好的体验,将guestrepo扩展作为次级回购的替代品。也许它在托管提供商支持方面没有那么多问题?我已经为你的第一个问题添加了一个答案,可以解释这一点。