我正在尝试为远程团队创建捆绑包。他们有修订版892的软件仓库的副本,我们目前正在修订版本1119.hg捆绑不起作用
首先,我尝试了补丁程序,但是创建了大量试图应用它们(通常在合并提交)时出现错误的文件。 ..和我们的存储库是17GB的大小,所以我试图创建一个增量补丁,因此计算出的hg捆绑对此是完美的。
我生成经由管束:
>hg bundle --rev 1119 --base 892 depot-892-to-1119.bundle
这创造束文件,它是350MB,这是可接受的,并且很有前景。
但是,当我们把它应用到目标软件仓库,只有去修订892它barfs上:
E:\dest-depot>hg unbundle -u depot-892-to-1119.bundle
adding changesets
transaction abort!
rollback completed
abort: [email protected]: unknown parent!
到目前为止这类似于搜索时我已经看到了其他一些问题,但我我们会更进一步。
我在源代码(较大的软件仓库)中查找了e5cc33458251,它显示为修订版930,明显是在修订版892之后,但指出这是失败的原因。当然目的地仓库没有修改。这就是为什么我首先创建了捆绑包......所以我不确定为什么这个问题会导致我的问题。
现在我们确实在仓库中有多个分支,并且rev 892被放在“Patch 2.7”分支上,而不是默认分支。我不知道这是否会导致问题。最终该修补程序分支在rev 999被合并回默认值。
930实际上是对代码的非常小的和微不足道的改变,并且也在“修补程序2.7”分支中。修订图中实际上有2个补丁2.7行,它们在932年合并在一起。但是,没有什么奇怪的。
我在这里没有看到问题。关于我应该生成什么样的包的任何想法?或者如果我应该走另一条路?
是的,的确你是对的。 所以问题是我从我的工作目录(在那里我总是编辑代码等)构建捆绑软件,并在我的修订版892修订版上匹配目标软件仓库时发生错误892 ......并且它们不同(是实际上894)。 生成正确包的方法是使用哈希标记信息而不是修订版号。 **不要这样** >汞柱捆绑--rev 1119 --base 892油库-892到1119.bundle **做** >汞柱捆绑--rev 1119 - 基地e5cc33458251仓库-892-to-1119.bundle –
很酷,我认为这可能是。版本号被认为仅在本地结帐时有效。如果你在电子邮件中添加一个,你就会遇到麻烦。 –