В любом случае я могу получить доступ к файлу из онлайн SVN в Python? - PullRequest
1 голос
/ 17 февраля 2011

Я сделал файл модуля Python и загрузил его в репозиторий SVN (скажем, string_utl.py, который выполняет операции со строками). В любом случае, я могу получить доступ к файлу Direclty для SVN. Хотя я извлекаю файл локально из SVN на мой компьютер и получаю к нему доступ оттуда. Но это не главное. Я имею в виду локальный репозиторий, где все мои коллеги могут получить доступ и изменить код. Хотя я добавил местоположение Lsvn в список sys.path, но это не сработало.

Я так и сделал sys.path.append ("http://lsvn/svn/lsvn/QRM_Helper/Helpful_Script/");

Но не сработало.

Я попробовал это по-другому, как это urllib.urlopen (some_url) поскольку я использую Python 3, он сказал использовать urllib2.urlopen (), но в моем случае это тоже не сработало. Это дало следующую ошибку, что модуль не существует.

Ответы [ 4 ]

2 голосов
/ 17 февраля 2011

Если вы используете python3, код обработки URL будет urllib.request.urlopen (кстати, он не должен был использовать urllib2.urlopen). sys.path.append принимает только локальные системные пути. Это не может принять URL. Вы можете оформить заказ модуля в вашей локальной системе и указать этот путь. pysvn кажется способом программно выполнять операции svn с использованием python, но все же после того, как вы извлечете код, вы должны ссылаться непосредственно на код через локальный путь файловой системы и добавить его в sys. путь.

2 голосов
/ 17 февраля 2011

Просто установите модуль pysvn , а затем используйте обычную проверку SVN, обновление, принятие и т. Д.

Вы не можете напрямую получить доступ к хранилищу данных SVN-сервера, поэтому, пожалуйста, не пытайтесь.

0 голосов
/ 18 февраля 2011

Я только что получил ответ. Я буду использовать Pysvn, чтобы оформить репо в локальной папке. И я добавлю папку в список sys.path. Используя это, я могу получить доступ к модулю папок. Спасибо всем за помощь

Но у меня небольшая проблема ... У меня не было прав администратора на моем офисном компьютере (я использую windows), поэтому я установил pysvn на свой ноутбук и скопировал файлы lib с моего ноутбука на мой офисный компьютер .. Хотя я могу pysvn на моем компьютере (Office comp). Но Python не работает по какой-то определенной причине, когда я получаю доступ к Pysvn. Может быть причина в том, что копировальная паста.

0 голосов
/ 17 февраля 2011

pip install -e svn+http://lsvn/svn/lsvn/QRM_Helper/Helpful_Script/#egg=local-name

создаст извлечение (в local-name/) и установит ссылки на ваш Python, чтобы импорт просто работал, а svn update также просто работал - переустановка не требуется. Предостережение: не знаю, работает ли это в Windows. Да, и вам понадобится файл setup.py, чтобы он работал.

Это не будет тянуть модуль каждый раз; Вы можете использовать pysvn или просто запустить svn update. Но если у вас более одной зависимости, установка их с помощью Pip сохранит ваше здоровье:).

...