3

我必须将我的工作签入到一个主要的 svn 存储库中,所以我必须为 Mercurial 设置 hgsubversion 插件。没关系,我从 bitbucket 克隆了插件,添加了 [extensions] hgsubversion = /path/to/hgsubversion,但是当我想使用它时,出现以下错误:

abort: no compatible bindings available:

Subversion 1.5.0 or later required, but no bindings were found
Subvertpy 0.7.4 or later required, but 0.7.3 found

Please install either Subvertpy or the Subversion Python SWIG bindings!

我的工作站使用 SVN 1.6.1,昨天系统管理员为我安装了最新的 subverpty (0.9.0) 数据包。

我现在该怎么办?

4

1 回答 1

0

这个问题的答案可能与您的设置相当具体。

首先,一些上下文:尽管 Mercurial 是用 Python 编写的,但它并不完全依赖PYTHONPATH于查找其库的常规逻辑。相反——为了更像一个普通的实用程序——安装的脚本将修改 Pythonsys.path以确保包含 Mercurial 库的目录首先出现。因此,如果 Mercurial 扩展程序尝试导入第三方库,它将首先找到与 Mercurial 安装在同一位置的库。

那么,谁安装了 Mercurial 和 Subvertpy 0.7.3?也许它们都来自 中的系统包/usr,并且 Subvertpy 0.9.0 是定制并安装到的/usr/local?如果是这样,请让您的管理员卸载 Subvertpy 0.7.3。

或者,您可以要求管理员为 Subversion 安装常规 (SWIG) 绑定。对于长时间运行的转换,它们会稍微慢一些并泄漏内存,但除此之外它们应该可以正常工作。

于 2012-11-27T18:30:52.017 回答