我应该运行hg还原吗?

时间:2011-12-02 02:27:04

标签: mercurial

我正在运行hg 1.7.5并且我在mercurial mailing list之前遇到了类似的问题,我们可以通过运行hg revert -a来解决它。现在我确实运行了hg revert并没有解决问题。我的文件系统出现了问题,当我运行`hg commit'时我不得不中断一个事务我得到一个新头

$ hg commit -m 'changes'
skapade ett nytt huvud
ubuntu@ubuntu:/media/Lexar/montao/montaoproject$ 

本地化消息意味着hg创建了一个新头。 hg diff什么都没显示。你能说出我能做些什么吗?

$ hg heads
ändring:     322:d74d7e14fe44
märke:       tip
förälder:    -1:000000000000
användare:   niklasro
datum:       Fri Dec 02 02:22:31 2011 +0000
kortfattat:  changes

ändring:     321:470a570041e0
användare:   niklasro
datum:       Sat Nov 26 22:38:16 2011 +0000
kortfattat:  bug fixes for insert

ubuntu@ubuntu:/media/Lexar/montao/montaoproject$ 

更新

我必须做一个它可以做的合并,然后我可以提交并推动所以现在只有一个头应该是:

$ hg heads
ändring:     324:eccc83b75b58
märke:       tip
förälder:    323:5842204042f5
förälder:    322:d74d7e14fe44
användare:   niklasro
datum:       Fri Dec 02 09:01:35 2011 +0000
kortfattat:  changes

ubuntu@ubuntu:/media/Lexar/montao/montaoproject$ 

1 个答案:

答案 0 :(得分:2)

如果您想保留最近的更改,请尝试以下操作:

  1. 将整个工作文件夹复制到其他地方
  2. 运行hg update -r 321 --clean
  3. 将工作文件夹备份复制回来(不要从备份中复制.hg文件夹
  4. 运行hg commit -m 'changes'
  5. 如果您不需要更改,则可以更新到rev 321,然后使用修补程序队列删除rev 322。我不习惯在控制台中使用hg,所以我将在TortoiseHg中写下如何做到这一点。

    首先,启用' mq'扩展:

    1. 打开' HG Workbench'
    2. 转到'文件 - >设置'
    3. 选择'扩展程序'来自功能列表
    4. 检查' mq'
    5. 保存更改
    6. 关闭' HG Workbench'
    7. 剥离版本:

      1. 打开' HG Workbench'
      2. 选择rev 322
      3. 右键单击
      4. 选择'修改历史记录' - >'剥离'
      5. 点击'剥离'