我有一个回购,其中设置了两个子回购,如下所示:
project/
|-- folder1
|-- folder2
|-- www [subrepo]
|-- dev [subrepo]
在机器 A 上,我检查了项目、www 和 dev,并修改了 .hgsub。我必须提交这个,以便 hg 识别 www 和 dev 子存储库(提交 -S 等)。
但是机器 B 只使用了项目的 www 功能,所以它看起来像这样:
project/
|-- folder1
|-- folder2
|-- www [subrepo]
同样,机器 B 中的 .hgsub 只有一个 www 的条目,我必须提交这个才能让 hg 将其识别为子存储库。
我想做的是推拉到我的中央仓库,但不推/拉.hgsub。否则,如果我从机器 A 提交并推送 .hgsub,然后从机器 B 中提取,我会自动获得我不想要的 dev 子存储库和 www 子存储库。
所以我在机器 B 上再次修改 .hgsub 以仅具有 www 并提交它以使其生效。我在机器 B 上的 www 子存储库中做了一些工作,并希望将其推送回中央存储库,但它也会将更改推送到 .hgsub。现在,当我打开机器 A 时,我的“开发”子存储库消失了,我必须再次将其添加回 .hgsub,然后我像这样来回走动,直到我沮丧地拔掉头发。
有没有办法解决这个问题?.hgsub 必须在每台机器上本地提交才能使子存储库工作,但我不希望它们被推或拉。是否有用于推/拉的 .hgignore?
干杯。