我有一个使用hgsubversion
从Subversion转换的Mercurial存储库。这是cron
作业发生的连续过程。
由于Subversion repo仍具有权威性,因此所有Mercurial克隆都被认为是只读的(也可以通过钩子强制执行)。
我可以毫无问题地克隆/拉出这个转换后的回购。但是,由于带宽的某些限制,我们还在远程站点上建立了初始转换(最初通过捆绑创建)的克隆。
另外,我有一个转换后的repo的本地克隆,我试图将其推送到原始的远程克隆。
大致是:
["Original"] --------> [My local clone] --------> [Remote clone from bundle]
^
|
|
[SVN]
现在,每当我尝试推送到Remote clone from bundle
时,我都会(由于隐私原因而被编辑):
$ hg push --new-branch shortname
pushing to ssh://user@server//hg/repo
searching for changes
searching for changes
abort: push creates multiple headed new branch 'branch_name'
(merge or see "hg help push" for details about pushing new heads)
如果我将远程端存在的更改打包到传统的捆绑包中,使用hg bundle
和scp
将它们转移到远程站点并将其应用到那里,那么这也没有问题。
我得到--force
,顺便说一下:
$ hg push --force --new-branch shortname
pushing to ssh://user@server//hg/repo
searching for changes
searching for changes
abort: Invalid argument
Exception IOError: (22, 'Invalid argument') in <bound method lfileswirerepository.cleanup of <hgext.largefiles.proto.lfileswirerepository object at 0x00000000025BE5C0>> ignored