Mercurial手动合并不会启动meld

Mercurial手动合并不会启动meld,mercurial,merge,meld,Mercurial,Merge,Meld,读过之后,我有这样一个.hgrc: [ui] merge = meld [merge-tools] meld.priority = 1 meld.premerge = False meld.args = $local $other $base [merge-patterns] ** = meld 然而,hg merge-r REV只起作用,我没有得到我缺少的东西 我想进行一次手动合并,删除其他分支引入的一些更改。另一个分支有一个影响多个文件的变更集,我不想全部修改它们。我有两个猜测。要么

读过之后,我有这样一个
.hgrc

[ui]
merge = meld

[merge-tools]
meld.priority = 1
meld.premerge = False
meld.args = $local $other $base 

[merge-patterns]
** = meld
然而,
hg merge-r REV
只起作用,我没有得到我缺少的东西


我想进行一次手动合并,删除其他分支引入的一些更改。另一个分支有一个影响多个文件的变更集,我不想全部修改它们。

我有两个猜测。要么你的配置设置没有被获取,要么你没有足够的冲突来考虑你的合并需要解决。 您可以使用
hg showconfig
检查前者——确保看到您的meld设置


如果它们出现了,那么您正在合并的两个变更集之间可能没有足够的冲突。即使premerge设置为false,仍然需要一些需要合并的内容。两个变更集中的同一文件中是否有实际更改?也许可以尝试
hg merge--tool internal:fail
,然后检查
hg resolve--list
,查看其中的内容。

在进行差异时,我正在按照您的说明使用MELD。我得到了以下信息:

    hg meld file.F
usage:
    meld                       Start with no windows open
    meld <dir>                 Start with VC browser in 'dir'
    meld <file>                Start with VC diff of 'file'
    meld <file> <file> [file]  Start with 2 or 3 way file comparison
    meld <dir>  <dir>  [dir]   Start with 2 or 3 way directory comparison

meld: error: no such option: -a
hgmeld文件.F
用法:
在没有打开窗口的情况下开始meld
在“目录”中使用VC浏览器进行meld启动
meld从“文件”的VC差异开始
meld[文件]从2路或3路文件比较开始
meld[dir]从2路或3路目录比较开始
meld:错误:没有这样的选项:-a

这个选项来自何处?

好的,我的meld设置已正确设置,但您似乎认为没有足够的冲突这一事实是正确的。传入的变更集修改了一些未修改的文件,我本以为可以触发手动合并来删除其中一些更改,但这似乎是不可能的。请尝试
hg merge--tool internal:prompt
hg merge--tool internal:dump
。我不知道他们是否会在过程的早期中止,但是如果他们中止了,也许你可以手动调用meld?谢谢,事实上,我通过在我的项目的早期修订版上对传入的变更集进行重定基来解决了我的问题。这在合并时引发了一些冲突,它启动了meld,我有机会手动选择要保留哪些更改:)很划算。即使meld没有启动,您也可以随时启动编辑器并编辑源文件,以便在合并之后但在提交之前包含/排除您想要的任何内容。在合并过程中添加新代码通常是不受欢迎的,但手动输入和输出代码是很正常的。您好,您应该为此提出一个新问题。似乎mercurial没有得到一组正确的参数。