2

我正在使用乌龟。

当我从工作台的上下文菜单中选择“diff to parent”或“diff to local”时,Kdiff3 就会运行。但是,Kdiff3 在拉动后合并(与本地合并)时不会运行。合并工具只说以下内容: % hg merge --verbose --tool=internal:merge 2 resolve manifests merging main.c.txt 警告:合并期间发生冲突。合并 main.c.txt 不完整!(编辑冲突,然后使用 'hg resolve --mark') 0 个文件已更新,0 个文件已合并,0 个文件已删除,1 个文件未解决 使用 'hg resolve' 重试未解决的文件合并或 'hg update -C 。放弃 [命令返回代码 1 Fri Jun 27 13:17:22 2014]

我在全局设置和存储库设置中都为三向合并工具和可视差异工具选择了 kdiff3。还有什么我必须做的吗?

更新:我的操作系统是 windows 7

另一个更新:(本地仓库中的 .hgrc 如下所示)

[extensions]
hgext.extdiff =

[extdiff]
cmd.kdiff3 =

[merge-tools]
kdiff3.args = $base $local $other -o $output

更新 2 (Mercurial.ini):

[merge-tools]
kdiff3.priority=-1
kdiff3.args=--L1 base --L2 local --L3 other $base $local $other -o $output
kdiff3.regkey=Software\KDiff3
kdiff3.regappend=\kdiff3.exe
kdiff3.fixeol=True
kdiff3.gui=True

斯蒂芬

4

1 回答 1

2
  1. Kdiff3 未在任何地方定义为 TortoiseHG 的合并工具(在全局或存储库上下文中)
  2. 如果为了使用 Kdiff3 作为 difftool,你不能拥有也不能启用 extdiff 扩展
  3. 两个(需要的)值都可以并且已经在 TortoiseHG GUI 中定义:TortoiseHG- Global Settings-TortoiseHG

THG 工具

或者,对于 mercurial.ini 的文本演示

[ui]
merge = p4merge
...
[tortoisehg]
vdiff = p4merge

在我的情况下,我将 p4merge 定义为我所有存储库的 diff|merge 工具,并且必须在 GUI 中重新定义 repo-settings(或将更改的字符串写入 hgrc),前提是对于某些存储库我更喜欢使用其他工具

于 2014-06-30T16:23:58.783 回答