2010-12-03 56 views
1

我已经设置我的〜/ .hgrc根据https://www.mercurial-scm.org/wiki/MergingWithVim使用vimdiff。合并失败mercurial与“操作不支持”

[ui] 
merge = vimdiff 

[merge-tools] 
vimdiff.executable = vim 
vimdiff.args = -d $base $local $output $other +close +close 

然而,当我尝试运行实际的合并,它只是失败了也不是很有益下列要求:

bash-3.2$ hg --debug merge 
    searching for copies back to rev 7 
resolving manifests 
overwrite None partial False 
ancestor 88aaf3a2e10f local 311bb03b96cd+ remote 29bec6ac5dd3 
junk: versions differ -> m 
preserving junk for resolve of junk 
updating: junk 1/1 files (100.00%) 
picked tool 'vimdiff' for junk (binary False symlink False) 
abort: Operation not supported: /Accounts/rainest/mtest/junk.orig 

任何想法,为什么它这样做呢?

回答

1

根据安装方式的不同,Mercurial通常会预先配置vimdiff进行合并。在我的机器上,这是在/etc/mercurial/hgrc.d/mergetools.rc,但我想它在你的OSX框不同。

如果您从.hgrc中删除所有这些信息,您可能需要检查它是否已经使用vimdiff进行合并。

您可以使用命令hg showconfig --debug查看有效的所有每用户,每个回购和全系统配置项目。如果在添加的行被删除后看到vimdiff,那么你可能会很好。

2

我已经想通了。

事实证明,如果您正在使用类似BSD的系统上的NFS装载,则会发生Python2.6的shutil库中的一个非常具体的错误。更多信息和解决方法可在http://bugs.python.org/issue7512找到。

相关问题