Уже не помню когда у меня перестал ратотать клиент к mercurial (hg) - после перехода на Python 2.7 или апгрейда дла Lion. Но так, как я им не пользовался, то решил не тратить время на восстановлние работоспособности. Но тут на проекте решили использовать Mercurial в качестве source control. Соответственно пришлось разбираться с hg. Сразу скажу что установка последней версии проблему не решила.
Шаг 1. Выполняем команду hg и получаем ошибку:
$ hgabort: couldn’t find mercurial libraries in [/usr/platlib/Library/Python/2.7/site-packages /usr/local/bin …
Тут понятно что клиент написан на Python и при запуске не может импортировать нужные модули.
Шаг 2. Смотрим исходники:
Выполняем команду
$ sudo vim which hg
и практически в самом начале файла (не считая комменатиев - 3-я строка) видем такую строчку:
libdir = ‘../../platlib/Library/Python/2.7/site-packages/’
Для тех кто знаком с расположением биболиотек, в частности Python’а, в MacOS сразу поймет что путь к Python указан неправильно, соответственно меняем его на:
libdir = ‘/Library/Python/2.7/site-packages/’
Шаг 3. Пользуемся mercurial:
$ hgMercurial Distributed SCM…