"abort: система не может найти указанный файл" в Mercurial

У меня есть большой (~700 МБ) репозиторий Mercurial. Я могу клонировать репо без обновления (а также он полностью доступен для просмотра в Bitbucket, где он размещен), но я не могу обновить рабочий каталог до последнего набора изменений, потому что я получаю следующую ошибку:

... lot of getting [path] lines here
getting path/to/some/file.ext
abort: The system cannot find the file specified
[command returned code 255 Wed Jun 24 00:51:37 2015]

Последний файл перед ошибкой действительно существует в репозитории (он также виден в Bitbucket).

Я думал, что проблема была из-за слишком длинных путей, но даже клонирование в корень диска дает то же самое. Пути могут все еще быть слишком длинными, но "path/to/some/file.ext" - это всего лишь 60 символов.

Выполнение команды с помощью traceback дает следующее:

Traceback (most recent call last):
  File "mercurial\dispatch.pyo", line 160, in _runcatch
  File "mercurial\dispatch.pyo", line 885, in _dispatch
  File "mercurial\dispatch.pyo", line 646, in runcommand
  File "mercurial\dispatch.pyo", line 976, in _runcommand
  File "mercurial\dispatch.pyo", line 947, in checkargs
  File "mercurial\dispatch.pyo", line 882, in <lambda>
  File "mercurial\util.pyo", line 716, in check
  File "mercurial\extensions.pyo", line 168, in closure
  File "mercurial\util.pyo", line 716, in check
  File "hgext\mq.pyo", line 3505, in mqcommand
  File "mercurial\util.pyo", line 716, in check
  File "mercurial\commands.pyo", line 6402, in update
  File "mercurial\hg.pyo", line 535, in clean
  File "mercurial\hg.pyo", line 520, in updaterepo
  File "mercurial\merge.pyo", line 1140, in update
  File "mercurial\merge.pyo", line 772, in applyupdates
  File "mercurial\subrepo.pyo", line 246, in submerge
  File "mercurial\context.pyo", line 252, in sub
  File "mercurial\subrepo.pyo", line 341, in subrepo
  File "mercurial\subrepo.pyo", line 1206, in __init__
  File "mercurial\subrepo.pyo", line 1216, in _ensuregit
  File "mercurial\subrepo.pyo", line 1294, in _gitnodir
  File "subprocess.pyo", line 710, in __init__
  File "subprocess.pyo", line 958, in _execute_child
WindowsError: [Error 2] The system cannot find the file specified

Кто-нибудь с идеей, как решить эту проблему?

1 ответ

Решение

Решил проблему: Ленивый Барсук указал в правильном направлении. Проблема заключалась в том, что путь к исполняемому файлу git не был добавлен в мой PATH переменная окружения.

Добавление C:\Program Files (x86)\Git\bin\ (или где у вас есть git.exe в вашей системе), чтобы PATH с Rapid Environment Editor (мне нужно было использовать этот инструмент в качестве моего PATH было более 1024 символов, поэтому с помощью setx не работал) чтобы системные переменные решили это.

Другие вопросы по тегам