Я нашел несколько похожих вопросов, но не этот точный.Для справки, вот некоторые похожие проблемы:
, если git index.lock существует, могу ли я безопасно удалить его, или необходимы дополнительные действия для проверки целостности?
Git - фатально: невозможно создать '/path/my_project/.git/index.lock': файл существует
Я программно использую git для нескольких репозиториев и (Windows)приложение находится в цикле, выполняя «git pull», «git commit» и «git push», синхронизируя количество репозиториев с локальными и удаленными изменениями данных.
Иногда мое приложение сталкивается с «index.lock файл существует "проблема.Приложение используется в различных средах, где компьютер действительно может быть просто случайно выключен ... длинная история.
Вопрос: могу ли я просто написать код для попытки удаления index.lock каждый раз, когда приложение сталкивается с этой ошибкой?Это "безопасно"?
Я обеспокоен вопросами времени.Например, удерживает ли git этот файл открытым, пока он используется (поэтому моя попытка удаления будет неудачной), или удастся удалить не потерянный файл index.lock, а затем испортить мое хранилище?Или удаление index.lock из-под обновления индекса просто приведет к сбою этого обновления, и его нужно будет повторить в следующий раз, когда приложение выполнит цикл извлечения?
В других ответах говорится что-то вроде «убедитесь, чтоникакие git-процессы не выполняются перед удалением index.lock ", но это на самом деле не работает в реальном мире, потому что оно создает проблемы с синхронизацией - т.е. приложение просматривает, и нет никаких" git-процессов ", но до того, как оно удаляет index.lock aПроцесс git начинается.
Любое понимание - или нестандартные предложения - будет высоко ценится.Спасибо!