Мы обнаружили, что наш репозиторий Hg был поврежден несколько недель назад.Эта коррупция, похоже, распространяется: все клоны (центральный репозиторий и пользовательские репозитории) повреждены, довольно сильно, одинаково.Я думаю, что мы могли бы предотвратить это, если бы мы сделали проверку в то время.
Существует ли какая-либо настройка Hg, которая будет вызывать проверку при каждом нажатии и предотвращать толчок в случае сбоя проверки?Я знаю, что мог бы реализовать это как хук в Python, но может ли быть более простое решение?
Можно ли сделать и обратное: убедиться, что удаленный репозиторий проверен перед извлечением?
FWIW, я нахожусь на Windows 10, и мы используем TortoiseHg.
Обновление: я попытался создать ловушки как предложено Jordi.Хг теперь висит в ожидании замков.Вот что я вижу:
c:\Users\username\test-hook>hg init
c:\Users\username\test-hook>cd ..
c:\Users\username>hg clone test-hook test-hook-clone
updating to branch default
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
# At this point I edited clone repository settings to include
# [hooks]
# preoutgoing = hg verify
#
# Then I created a test.txt file and "added" it via TortoiseHg context menu.
c:\Users\username\test-hook-clone>hg commit
c:\Users\username\test-hook-clone>hg status
c:\Users\username\test-hook-clone>hg outgoing
comparing with c:\Users\username\test-hook
searching for changes
changeset: 0:a61d33af6cdb
tag: tip
user: username
date: Mon May 06 20:32:54 2019 +0200
summary: test file added
c:\Users\username\test-hook-clone>hg push -verbose
pushing to c:\Users\username\test-hook
searching for changes
running hook preoutgoing: hg verify
waiting for lock on repository c:\Users\username\test-hook-clone held by process '16840' on host 'LT407233'