Подтвердить что ты не робот

Mercurial внезапно думает, что все файлы изменились - ожидание блокировки рабочего каталога

Я использую Mercurial v 1.1 в течение нескольких месяцев для документов версий и других файлов. Вчера он неожиданно провалился с сообщением:

waiting for lock on working directory

Это происходит во всех проектах, которые у меня есть под управлением .hg. Mercurial также считает, что все файлы во всех проектах изменились.

В проекте нет файла .hg/store/lock, который говорит, что он ожидает блокировки.

Единственное, что могло вызвать это, - это то, что Windows навсегда установила исправление безопасности на моем компьютере.

Кто-нибудь еще видел это с Mercurial?

4b9b3361

Ответ 1

У меня был успех, удалив этот файл .hg/wlock целиком, если он существует, тогда все возвращается к норме. Если вы опасаетесь потерять что-то, просто сделайте копию

Ответ 2

Для рабочего каталога блокировка .hg/wlock. Имеется ли файл? Для восстановления dirstate (будьте осторожны, он не будет восстанавливать изменения, такие как добавление/удаление/переименование/копии), вы можете использовать hg debugrebuildstate.

Ответ 3

Я обновил версию hg 1.3.1, и теперь все работает.

У меня, должно быть, была коррупция в двоичных файлах 1.1.1 (из Cygwin).

Cygwin все еще находится на 1.1.

Ответ 4

Чтобы узнать, какой файл блокирует каталог, в вашем рабочем каталоге:

hg debuglocks

Это должно дать результат, указывающий, какой файл блокирует каталог, например.

lock: free
wlock: (461232s)

Чтобы разблокировать силу использования:

hg debuglocks --force-wlock

или

hg debuglocks --force-lock

для получения дополнительной информации:

hg debuglocks -h

Обратите внимание на этот параграф:

Замки защищают целостность данных Mercurial, поэтому их следует лечить с осторожностью. Сбой системы или другие прерывания могут привести к блокировкам не будут должным образом выпущены, хотя Mercurial будет обычно обнаруживать и автоматически удалите такие устаревшие блокировки.