mercurial - tortoisehg:kdiff3 在 merge 期间不运行

标签 mercurial windows-7-x64 tortoisehg kdiff3

我正在使用 tortoisehg。

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

我在全局设置和存储库设置中为三向 merge 工具和视觉差异工具选择了 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

斯蒂芬

最佳答案

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

THG Tools

或者,如果是 Mercurial.ini 的文本演示

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

就我而言,我将 p4merge 定义为所有存储库的 diff|merge 工具,并且仅当对于某些存储库我更喜欢使用其他工具时,才必须在 GUI 中重新定义存储库设置(或将更改的字符串写入 hgrc)

关于mercurial - tortoisehg:kdiff3 在 merge 期间不运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24458507/

相关文章:

svn - 部署 - Web 应用程序的微小变化

mercurial - 让 Mercurial 完全忘记文件和历史

mercurial - 如何在 Windows 上进行硬链接(hard link)克隆

Windows Kernel32.BatteryLifePercent = 255

version-control - Mercurial 随机添加 60 多个 merge

Mercurial 工作流程 : why do I seem to commit everything twice?

c++ - 根据 C++ 中的列对具有 double 的 vector 的 vector 进行排序

web-services - 证书问题 403.7

eclipse - 为什么 Mercurial 子存​​储库在 Eclipse 和 torotoiseHG 中表现为未版本控制的文件

mercurial - 撤消 hg 推送(取消?)