问题标签 [subrepos]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
644 浏览

git - 在 mercurial 子存​​储库中使用特定 (git) 分支

我有一个善变的项目,我想在其中使用 jQuery-File-Upload。我将以下内容添加到我的.hgsub文件中,以便为此插件创建一个子存储库:

我遇到的问题是我需要jquery-ui在我的项目中使用这个 git repo 的分支。

有没有办法指定 git repo 的分支名称作为 hg subrepo 拉?

0 投票
1 回答
264 浏览

git - 如何使用连接到最新版本标签的 mercurial 或 git 子存储库?

我正在寻找一种解决方案,它允许我使用不是 HEAD 而是特定RELEASE标签的子存储库,或者如果可能的话,使用最新的标签。

这可能吗,我应该如何实现?有没有人实现这个?

0 投票
1 回答
68 浏览

mercurial - 如何为 mercurial 子存​​储库指定默认推送?

当您使用添加 mercurial 子存​​储库时,.hgsub您可以使用 HTTPS 或 SSH 指定它们,但这是一个大问题:

  • 如果您指定 HTTPS,您将无法推送,因为它需要您登录。
  • 如果您指定 SSH,您将能够推送,但其他人甚至无法签出您的存储库。

有没有办法解决这个问题?

0 投票
8 回答
3553 浏览

mercurial - Mercurial:Subrepo 错误 - “中止:提交新的 subrepo [路径] 被排除”

我正在尝试在我的 Mercurial 项目存储库中为项目的依赖项设置子存储库。但是当我尝试提交.hgsub文件时,我不断收到此错误:


细节:

在我的项目的 Mercurial 存储库目录(在顶层)中,我有一个子目录 ,lib/它将包含我的依赖项。

碰巧我的所有依赖项都存在于github 上,在那里我分叉了每个库来创建,例如https://github.com/mygithubaccount/forked-dependency

我创建了一个.hgsub文件并将其添加到存储库(也在顶层)。它包含如下条目(我尝试如下单独隔离每个条目;它似乎没有任何区别)

然后我做了以下,从我的项目存储库的工作目录开始:

任何想法我做错了什么?

0 投票
1 回答
88 浏览

dvcs - 库的 Bzr 子存储库

我正在处理几个 PHP 项目。一个是应用程序,另一个是支持该应用程序的库。以前我使用了一个 mercurial 设置,其中库是应用程序存储库中的一个子存储库。这意味着对库代码的任何更改都会提交到子存储库,并且可以单独与库项目合并(以便将库代码的历史与应用程序分开)。

我一直在努力寻找有关如何使用 Bazaar 执行此操作的示例或文档(我目前选择的 DVCS)。有人试过/做过吗?在 Bzr 中是否值得做,或者我应该看看一个更好地满足这个需求的不同的 DVCS 系统?

0 投票
0 回答
177 浏览

mercurial - Mercurial - 使用 subrepos 推送时的竞争条件

有一个相当基本的子回购结构,如下所示:


父/subrepo1
父/subrepo2

当多个用户同时推送更改时,往往会出现竞争条件。简单的例子:

用户 1 和 2 开始推送。
用户 1 跳过parent/subrepo1,没有变化。
用户 2 推送到parent/subrepo1, 进行更改。
用户 1 推送到parent/subrepo2,并进行更改。
用户 2 尝试推送到parent/subrepo2,但不能,因为它会创建多个头。
用户 1 完成推送parent

这样做的结果是用户 1 成功推送所有内容,但用户 2 部分推送然后失败。这留下了一个在parent/subrepo1中没有相应提交的头部parent,这将导致下一个推送的人出现问题,parent/subrepo1除非用户 2 发现他们的错误、拉parent取、合并、提交,然后尝试推送(但不能保证另一个用户不会再尝试同时推动!)。

我的问题:Mercurial 中是否有办法强制用户在 Mercurial 存储库与其他子存储库进行推送操作时等待(以有效地实现互斥锁)或者有没有办法撤消对目标更改的子存储库的失败推送用户推送失败。

0 投票
2 回答
1489 浏览

git - Git inside git:断开内部git,保留文件

概括

git里面的git。删除了内部.gits,保留了文件。推。克隆。文件夹存在,但为空。

我正在尝试做的事情

所以我正在尝试将现有的存储库上传到我自己的 git 服务器。回购中有一些回购(不是原始回购的一部分)。我不需要连接这些,最重要的是稳定性——克隆必须生成 PHP 服务器文件的工作副本。

我是如何尝试的

因此,我.git从内部存储库中删除了该文件夹,并将主文件夹推送到空的 git 服务器中。然后我将新创建的远程仓库克隆到一个新的本地目录中——以前的文件夹.git都是空的(文件夹本身确实存在)。我还安装了 GitLab,该文件夹的显示与普通文件夹不同,没有找到额外的信息(注意文件夹“flashcard”):

在此处输入图像描述

问题

有没有其他方法可以从文件夹中删除 git 功能?是什么让文件夹不再是普通文件?我完全没有想法。

其他信息

.gitignore并且.git/ifno/exclude不要触摸这些目录。

0 投票
2 回答
1134 浏览

git - Git repo 作为 Hg subrepo

请向我解释将 git 存储库作为子存储库添加到 hg 存储库的正确方法。

我只需要有可能

  1. 克隆 hg 存储库及其所有子存储库(git 和 hg);
  2. 包含从 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

我的.hgsubstate

因此,当在 bitbucket 上单击修订号时,出现 404 错误,因为 git repo 的修订 000000000000 不存在。然后,如果我.hgsubstate这样改变:

所以它指向 git repo 的实际负责人,而不是当我克隆我的 repo 时,我收到以下消息:

而且,我的 hg subrepo 的 hgrc 文件包含以下内容:

如果我删除.hgsubrepo 文件夹中的文件夹,然后将 git repo 克隆到 subrepo 文件夹,则提交对话框中的 TortoiseHg 告诉我子存储库已删除。

所以我根本不知道我要做什么。

0 投票
3 回答
353 浏览

ssh - 如何防止 HG Workbench 使用子存储库询问用户名?

我通过 ssh 连接使用 HG Workbench 和子存储库。我还使用 ssh-rsa 来避免每次都输入密码。这对主存储库很有用。但是,如果我推或拉 HG 工作台(或命令外壳),则提示带有一个对话框来为每个子存储库输入我的登录名。我可以防止这种情况吗?

更新:

我用窗户。此外,我的全局和每个子存储库中都有一个[ui]部分。usernamemercurial.inihgrc

0 投票
1 回答
101 浏览

svn - 尝试签出 subrepo 时出现 hg update 问题

我有一个带有svn subrepo的hg 存储库

我已经成功地将它克隆到某些机器上并提取了最新版本。然后我正在尝试将工作目录更新为修订版:

(“Получена ревизия”在俄语中的意思是“检查出的修订版”)因为什么而中止?修订已成功签出!所以由于一些未知的原因,我无法更新。

我也尝试单独检查 svn repo,它可以工作:

所以:

  1. 可以单独签出 svn subrepo
  2. 我可以在另一台机器hg update上进行这个 repo
  3. 其他用户可以hg update在同一台机器上访问此 repo
  4. svn checkout 和 checkout as subrepo (while hg update) 返回不同的变更集!

我在哪里可以找到问题的根源?