1

我的用例:
我注意到我在早期版本中进行了不必要的编辑,我想从补丁中丢弃一个大块,并保留该文件的所有其他更改。我试图在里面编辑补丁.hg/patches/,然后hg qrefresh,但在那之后,大块头又出现了。

可能的解决方案:

  • 导出该补丁,剪切除不需要的大块之外的所有内容,然后反向应用此补丁。
  • 不知何故,用包含大块的补丁使 workdir “脏”,然后用我的 IDE 的 GUI 很好地编辑文件,它轮询 VCS 并突出显示更改,并提供恢复这些更改的选项。

问题:

  • 编辑.hg/patches是一种有效的做法吗?
  • 如何通过需要补丁使 workdir 变脏,然后通过编辑重新应用它?喜欢git reset --soft
  • 有没有其他方便的方法来做主题?
4

1 回答 1

1

我在早期版本中进行了不必要的编辑

在MQ方面没有太大意义。我会假设“MQ-queue 中的一个补丁必须获得额外的修复,而其他补丁则按原样保存”

编辑 .hg/patches 是一种有效的做法吗?

不,这是最糟糕的选择

如何通过需要补丁使 workdir 变脏,然后通过编辑重新应用它?像 git reset --soft 一样?

在队列中应用这个需要的补丁

hg qpop -a
hg qpush --move Mypatch

进行必要的更改,刷新补丁

<edit>+<save> in IDE
hg qrefresh

取消申请并移至队列中的旧位置

hg qpop
hg qpush --move SomeOther //set of pushes in order to restore old order
hg qpop -a
于 2014-01-31T22:12:16.220 回答