推动创造新的遥远的头! (你忘记合并?使用push -f强制)

好吧,我有一个小谷歌,找不到解决scheme,因为我偶然发现了相同的信息,但不同的方式,人们已经得到它。 我是新来的mecurial,并希望确保我正确地做到这一点。

所以我收到上面的错误信息。 我有一个开发网站和一个活网站,我试图将代码推到代码库。

不过昨天我不小心做了hg add了所有我不想做的媒体。 我做了恢复之后,从代码库中删除所有媒体文件,然后提交并推送更改。 所以今天我一直在对CSS文件和一些模板进行更改。 我已经去提交我的更改,推他们,但是当我运行hg push我得到上面的错误。

我已经运行hg日志,只有6个提交,因为它是一个干净/新的分支/项目。 任何帮助将不胜感激,我很抱歉,如果我没有正确解释任何东西!

这不是一个“错误”信息; 这是完全正常的情况。 这个信息是说:“嘿,其他人在你工作的时候把新工作推到了这个仓库,你应该把他们整合到你的工作中去,这样他们就不必把你的工作融入到他们的工作中了?

所以先做一个:

 hg pull 

然后a:

 hg merge 

顺便说一句,如果你真的使用hg revert命令没有从历史中删除这些文件,所以你的历史可能相当大。

考虑阅读Mercurial书籍的前几章,它很好地涵盖了这些情况。

如果你想取消你的冲突的变化

 hg outgoing 

您应该看到包含您未提交的提交/冲突更改的行。 search更改集版本。 这里64

 searching for changes changeset: 64:1830948c246e 

然后

 hg strip 64 

这对我有效。

 hg push -f 

要获得更多命令,请尝试

 hg help push