首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mercurial合并执行程序脚本

Mercurial合并执行程序脚本
EN

Stack Overflow用户
提问于 2014-11-11 15:10:47
回答 1查看 585关注 0票数 1

我如何配置Mercurial来弹出合并程序时,当两个头冲突和一个人合并是必需的?

我在Visual中使用Mercurial和HgSccPackage。用于使用Devart的CodeCompare合并和比较im。

日志显示:

代码语言:javascript
复制
[Pull started]

pulling from http://localhost:8000/
[Error: warning: conflicts during merge.]
searching for changes
[Error: merging JackPot/JackPotViewer/Application/FrameRender.cpp incomplete! (edit conflicts,       then use 'hg resolve --mark')]
all local heads known remotely
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
resolving manifests
calling hook preupdate.eol: <function preupdate at 0x023DA4F0>
couldn't find merge tool codecompare_merge
couldn't find merge tool codecompare_merge
couldn't find merge tool ecmerge
couldn't find merge tool filemerge
couldn't find merge tool gpyfm
couldn't find merge tool kdiff3
couldn't find merge tool meld
couldn't find merge tool bcompare
couldn't find merge tool UltraCompare
couldn't find merge tool araxis
couldn't find merge tool beyondcompare3
couldn't find merge tool diffuse
couldn't find merge tool diffmerge
couldn't find merge tool p4merge
couldn't find merge tool tkdiff
couldn't find merge tool tortoisemerge
couldn't find merge tool xxdiff
couldn't find merge tool gvimdiff
couldn't find merge tool vimdiff
couldn't find merge tool winmerge
couldn't find merge tool merge
couldn't find merge tool hgmerge
merging JackPot/JackPotViewer/Application/FrameRender.cpp
0 files updated, 0 files merged, 0 files removed, 1 files unresolved
use 'hg resolve' to retry unresolved file merges

[Operation completed. Exit code: 1]

我的Mercurial.ini是:

代码语言:javascript
复制
[ui]
username=diego martinez <diego.martinez@pictel.es>
ignore=C:\Users\diego\Documents\hgignore_global.txt
merge=codecompare_merge

[extensions]
eol=
extdiff=

[merge-tools]
codecompare_merge.regkey=SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\CodeCompare_is1
codecompare_merge.regname=InstallLocation
codecompare_merge.regappend=CodeMerge.exe
codecompare_merge.args=/SC=Hg /TF=$other /MF=$local /RF=$output /BF=$base /TT="Other: $other"     /MT="Local: $local" /RT="Output: $output" /BT="Base: $base"
codecompare_merge.binary=False
codecompare_merge.gui=True
codecompare_merge.checkconflicts=True
codecompare_merge.premerge=Keep


[extdiff]
cmd.codecompare=C:\Program Files\Devart\Code Compare\CodeCompare.exe
opts.codecompare=/SC=Hg /W /title1="$plabel1" /title2="$clabel" $parent $child

[merge-patterns]
*.*=codecompare_merge

[http_proxy]
host=
no=
user=
passwd=
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-11-11 16:32:20

在您的设置中,您正在定义两个工具,但只成功地为其中一个工具指定了路径。

您已经将codecompare定义为外部差异工具。当您试图查看文件的两个版本之间的差异时,我假设它是正确工作的,例如hg codecompare -r "tip^:tip" file.txt

第二个工具是codecompare_merge,它使用一组键定义了安装位置:

代码语言:javascript
复制
codecompare_merge.regkey=SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\CodeCompare_is1
codecompare_merge.regname=InstallLocation
codecompare_merge.regappend=CodeMerge.exe

这告诉hg在HKEY_CURRENT_USER (然后是HKEY_LOCAL_MACHINE)上查看注册中心中的regkey Install Location,然后将CodeMerge.exe附加到其中以获得可执行路径。我的猜测是,哪里有一个错误。

您应该能够用以下内容替换这三个设置,以匹配diff部分中的设置:

代码语言:javascript
复制
codecompare_merge.executeable=C:\Program Files\Devart\Code Compare\CodeCompare.exe

查看Selenic网站上的更多细节

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26868008

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档