【发布时间】:2013-12-07 14:52:55
【问题描述】:
我的 mercurial 安装拒绝通过命令行合并。这是我打开verbose和debug后的输出。
C:\src\StackOverflow>hg resolve --all --verbose --debug
couldn't find merge tool codecompare_diff
couldn't find merge tool codecompare_merge
couldn't find merge tool bcompare
couldn't find merge tool beyondcompare3
couldn't find merge tool beyondcompare3-noauto
couldn't find merge tool rekisa
couldn't find merge tool UltraCompare
couldn't find merge tool araxis
couldn't find merge tool meld
couldn't find merge tool diffuse
picked tool 'kdiff3' for StackOverflow/StackOverflow.csproj (binary False symlink False)
merging StackOverflow/StackOverflow.csproj
my StackOverflow/StackOverflow.csproj@4f4faeac0fea+ other StackOverflow/StackOverflow.csproj@ae29e8c6bb88 ancestor StackOverflow/StackOverflow.csproj@399376fedfc5
The system cannot find the path specified.
merging StackOverflow/StackOverflow.csproj failed!
注意:合并实际上是成功的(弹出kdiff3,我合并保存),但是mercurial却是一头雾水。
如何确定 Mercurial 找不到哪个 path?
我已尝试更新到最新版本 (2.8) 并查看我的 mercurial.ini 是否有任何可疑文件。我还使用了不同的合并工具 p4merge 来达到同样的效果。
【问题讨论】:
-
也许你应该把它迁移到Meta Stack Overflow,因为它是关于SO的?
-
这不是关于 SO:而是关于 Mercurial。我正在检查的项目称为 StackOverflow,但这与上下文无关 :-)
-
您在
clone的新包装盒中尝试过吗?似乎是“系统”问题,而不是 Mercurial。 -
检查
[ui]部分中的合并定义的 ini 文件(全局和存储库) - 似乎您没有指定 -
"系统找不到指定的路径。"是来自 Windows 而不是 Mercurial 的消息。您的 kdiff3 工具是否安装在名称中带有空格的目录中?或者也许是 kdiff3 调用的一些工具?也许某处有一个没有“”或其他东西的环境变量?或者可能有一个环境变量指向一个不存在的目录或文件。正如@LazyBadger 建议的那样,检查您的 .ini 文件,但要注意可能不正确的路径。
标签: command-line merge mercurial