Hgsubversion: нет совместимых привязок
Я должен проверить свою работу в основном репозитории SVN, поэтому мне пришлось настроить плагин hgsubversion для Mercurial. Это нормально, я клонировал плагин из 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).
Что мне теперь делать?
1 ответ
Ответ на этот вопрос, скорее всего, будет довольно специфичным для вашей установки.
Во-первых, немного контекста: хотя Mercurial написан на Python, он не полагается исключительно на обычный PYTHONPATH
логика поиска своих библиотек. Вместо этого - чтобы работать больше как обычная утилита - установленный скрипт изменит Python sys.path
чтобы убедиться, что каталог, содержащий библиотеки Mercurial, появляется первым. В результате, если расширение Mercurial попытается импортировать стороннюю библиотеку, оно сначала найдет ее установленной в том же месте, что и Mercurial.
Итак, кто установил Mercurial и Subvertpy 0.7.3? Возможно, они оба пришли из системных пакетов в /usr
и Subvertpy 0.9.0 был специально создан и установлен в /usr/local
? Если это так, попросите администратора удалить Subvertpy 0.7.3.
Кроме того, вы можете попросить своего администратора установить обычные (SWIG) привязки для Subversion. Они будут немного медленнее и будут пропускать память для длительных преобразований, но в остальном они должны работать нормально.