Вопрос по python, svn – Библиотека оболочки Python Subversion

6

В Subversionдокументация есть пример использования Subversion из Python

<code>#!/usr/bin/python
import svn.fs, svn.core, svn.repos

def crawl_filesystem_dir(root, directory):
    """Recursively crawl DIRECTORY under ROOT in the filesystem, and return a list of all the paths at or below DIRECTORY."""

    # Get the directory entries for DIRECTORY.
    entries = svn.fs.svn_fs_dir_entries(root, directory)
</code>

Когда я запускаю этот код, я получаю ошибку импорта:

<code>$ python crawl.py
Traceback (most recent call last):
  File "crawl.py", line 7, in <module>
    import svn.fs, svn.core, svn.repos
ImportError: No module named svn.fs
</code>

Это означает, что я скучаю по библиотекеsvn, Я пытался установить пакет, но менеджер пакетов Python не может его найти.

<code>$ pip install svn
Downloading/unpacking svn
  Could not find any downloads that satisfy the requirement svn
No distributions at all found for svn
</code>

Итак, как мне установить эту библиотеку?

Вы поймали меня, я скопировал и вставил ошибку от запускаimport svn.core в интерактивном режиме Colonel Panic
Не странно ли, что он жалуется наsvn.core но не оsvn.fs (последний стоит первым в списке импорта)? NPE

Ваш Ответ

2   ответа
2

чтобы иметь возможность импортировать классы.

В моем случае (Fedora)

sudo yum install subversion-python

Apt-get должен иметь более или менее одинаковые

9

на которую ссылается эта документация, является оболочкой на основе SWIG, которая собирается и поставляется с самой Subversion. Таким образом, если пакет вашей операционной системыsubversionищиsubversion-python пакет, чтобы отправить вместе с ним. Если вы собираете Subversion из источника, вы захотите использовать--with-python настроить параметр для привязки, которые будут построены рядом.

Альтернатива (с совершенно другим API)сторонняя оберткаpysvn, Они лучше документированы и более просты в использовании, но также менее эффективны с точки зрения производительности времени выполнения (они не реализуют все возможности повторного использования соединения и такие недокументированные «официальные» привязки).

Похожеpip install svn работает на Windows сейчас.
@MattHickford Обновлено со ссылкой на pysvn.
Эта библиотека pysvn была отличной и сделала то, что я хотел Colonel Panic
Спасибо нашел неуловимую документациюpysvn.tigris.org/docs/pysvn_prog_guide.html pysvn.tigris.org/docs/pysvn_prog_ref.html Colonel Panic
Увы, моя ОС сейчас Windows, в ней нет менеджера пакетов. Я счастлив использоватьpysvn если вы можете связать меня с документацией. Colonel Panic

Похожие вопросы