2012-03-24 3 views
6

С момента перехода на subversion 1.7 я получаю «нераспознанный формат .svn/entries» при запуске buildout. Я замечаю, что есть нерешенные отчеты об ошибках как для распространения, так и для setuptools для этой ошибки, и также кажется, что вы можете использовать setuptools_subversion для решения проблемы.«непризнанный формат .svn/entries» с использованием buildout

Что я не могу узнать, как это сделать, это установить setuptools_subversion, чтобы сборщик забирал его. Пожалуйста, кто-нибудь может помочь?

Я попытался

  • загрузив его и работает питона setup.py установить
  • добавить его в список яиц [Buildout] часть моей конфигурации Buildout

ответ

4

Вам нужно установить его на уровне пакетов python; easy_install (используется под капотом buildout) нуждается в нем, прежде чем он установит что-нибудь еще.

При этом строфа python setup.py install должна была установить его просто отлично; проверить, выполнив следующий тест:

$ python -m setuptools_subversion 
/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/setuptools_subversion.py directory 

Это должно напечатать путь модуля установки, как он сделал для меня в приведенном выше примере. Вы можете попробовать использовать Пип или easy_install для автоматической загрузки:

$ pip install setuptools_subversion 

или

$ easy_install setuptools_subversion 

Вы можете сделать это в virtualenv, если вы хотите, чтобы изолировать установку. Поскольку это в основном зависимость для svn 1.7, установка этого на том же уровне, что и двоичный файл svn (обычно в системной системе), безусловно, приемлема и норма.

Обратите внимание, что сообщение об ошибке unrecognized .svn/entries format будет не исчезнет, ​​но ваше построение в противном случае будет успешным. Сообщение печатается независимо от того, как easy_install сначала пытается выполнить внутренний парсер .svn, прежде чем отложить его на внешний плагин.

Если вы действительно, действительно хотите, чтобы проверить, если плагин установлен, запустите следующий код Python:

import pkg_resources 
for entrypoint in pkg_resources.iter_entry_points('setuptools.file_finders'): 
    print entrypoint 

На моей системе это печатает:

svn = setuptools_subversion:listfiles 
svn_cvs = setuptools.command.sdist:_default_revctrl 
git = setuptools_git:gitlsfiles 
hg = setuptools_hg:hg_file_finder 
+0

Спасибо Мартейн. Оказывается, он был установлен - я сбился с толку, потому что «непризнанный формат .svn/entries» все еще появлялся, и потому что, пытаясь построить яйцо ревизии, я получал -r0. Я думаю, это для другой проблемы, хотя – scarba05

+0

После установки 'setuptools_subversion' вам нужно вручную удалить исходную установку' setuptools' из файла 'setuptools.pth' или' easy install.pth'. – sakra

+1

@sakra: 'setuptools_subversion' является ** не ** заменой! Вы * не * удаляете 'setuptools'. –