我可以使用带有 Subversion 子存储库的 Mercurial 来自动签出吗?

发布于 2024-11-26 15:06:18 字数 283 浏览 1 评论 0原文

我已经设置了一个包含 subversion 子存储库的 Mercurial 存储库。我已经配置了一个 .hgsub 文件,以便 Mercurial 能够识别该存储库。但是,我希望每当我对存储库进行拉取操作时,Mercurial 都可以自动触发 svn update

Mercurial subversion 存储库可以实现这一点吗?如果不是,那么与将该子目录放在 .hgignore 中相比,拥有 .hgsub 文件有什么优势?

I've set up a Mercurial repository that has a subversion subrepository. I've configured an .hgsub file so that Mercurial is aware of that repository. However, I was expecting that Mercurial could trigger an svn update automatically whenever I did a pull on the repository.

Is this possible with Mercurial subversion repositories? If not, what's the advantage of having the .hgsub file at all as opposed to placing that subdirectory in .hgignore?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

吃→可爱长大的 2024-12-03 15:06:18

Mercurial 不会自动拉取/更新子存储库。来自 hg help subrepos

子存储库不会自动跟踪其最新变更集
来源。相反,它们会更新为对应的变更集
在顶级变更集中签出变更集。是这样的
开发人员总是可以获得一组一致的兼容代码
库更新时。

因此,更新子存储库是一个手动过程。只需检查目标
所需修订版的子存储库,在顶级存储库中进行测试,然后提交
在父存储库中记录新组合。

将存储库放在 .hgignore 中将不允许您跟踪子存储库的哪个版本与父级的每个版本兼容/测试。

在 SVN 术语中,这类似于创建绑定到特定 SVN 修订版的 svn:external 链接。

Mercurial does not automatically pull/update subrepos. From hg help subrepos:

Subrepos do not automatically track the latest changeset of their
sources. Instead, they are updated to the changeset that corresponds
with the changeset checked out in the top-level changeset. This is so
developers always get a consistent set of compatible code and
libraries when they update.

Thus, updating subrepos is a manual process. Simply check out target
subrepo at the desired revision, test in the top-level repo, then commit
in the parent repository to record the new combination.

Placing the repo in .hgignore would not allow you to track which version of the subrepo is compatible/tested with each version of the parent.

In SVN terms, this is similar to create an svn:external link which is bound to a specific SVN revision.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文