Я пытаюсь использовать расширение hg-git Mercurial в Windows (Windows 7 64-bit, если быть точным). У меня установлены Mercurial и Git. У меня установлен Python 2.5 (32-разрядный).
Я следовал инструкциям на http://hg -git.github.com / , чтобы установить расширение. Начальная установка easy_install не удалась, поскольку не удалось скомпилировать dulwich без Visual Studio 2003.
Я установил dulwich вручную:
- git clone git: //git.samba.org/jelmer/dulwich.git
- CD Dulwich
- c: \ Python25 \ python setup.py --pure install
Теперь, когда я запускаю easy_install hg-git, это происходит успешно (так как зависимость Дульвича удовлетворяется).
В моем C: \ Users \ username \ Mercurial.ini у меня есть:
[extensions]
hgext.bookmarks =
hggit =
Когда я набираю 'hg' в командной строке, я вижу:
"*** не удалось импортировать расширение hggit: нет модуля с именем hggit"
Глядя в папку c: \ Python25, я вижу только ссылку на hggit Lib\site-packages\hg_git-0.2.1-py2.5.egg
. Это должно быть где-то извлечено, или оно должно работать как есть?
Поскольку это не помогло, я попытался выполнить «более сложные» инструкции со страницы hg-git, в которых предлагалось клонировать git: //github.com/schacon/hg-git.git и указывать путь в моей конфигурации Mercurial. Я клонировал репозиторий и изменил файл расширений так:
[extensions]
hgext.bookmarks =
hggit = c:\code\hg-git\hggit
Теперь, когда я запускаю hg, я вижу: *** не удалось импортировать расширение hggit из c: \ code \ hg-git \ hggit: ни один модуль с именем dulwich.errors.
Хорошо, это говорит мне о том, что сейчас он находит hggit, потому что я вижу в hg-git \ hggit \ git_handler.py, что он вызывает
from dulwich.errors import HangupException
Это заставляет меня думать, что Дульвич установлен неправильно или не в пути.
Обновление:
Из командной строки Python:
import dulwich
урожайность Import Error: No module named dulwich
Однако в C: \ Python25 \ Lib \ site-packages у меня действительно есть папка dulwich-0.5.0-py2.5.egg, которая, похоже, заполнена. Это было создано с помощью шагов, упомянутых выше. Есть ли дополнительный шаг, который мне нужно сделать, чтобы сделать его частью «пути» Python?
Из командной строки Python (как предложено в одном из ответов):
import pkg_resources
pkg_resources.require('dulwich')
выход [dulwich 0.5.0 (c:\python25\lib\site-packages\dulwich-0.5.0-py2.5.egg)]
Так что это мне говорит? Импортировать dulwich не удалось, но, очевидно, pkg_resources может его найти. Что я могу сделать с этой информацией?