Как восстановить удаленный файл в git - PullRequest
0 голосов
/ 28 января 2019

Я понимаю, что на этот вопрос ответили в других темах.Тем не менее, моя проблема (я считаю) уникальна.

Предыстория: Я git Bash Noob.Я только недавно начал использовать его, и в результате сделал немало глупостей.Я создаю тестовый файл AWACSfile.txt, помечаю его git add.Затем я сделал git commit, и вот тут-то и начались проблемы.

Он поднял новый экран и попросил у меня заметки (или некоторые другие требования при постановке), которые я не добавил к commitлиния.В тот момент я не знал, что делать, и попытался выйти из оболочки bash.

Это предупредило меня о том, что процессы все еще открыты.Я проигнорировал это, предполагая, что они прекратятся, когда я выйду из оболочки. Неправильный .После этого мне не удалось объединить ветви, переключить ветви, я не мог удалить файл, я не мог удалить файл из файла, я ничего не мог сделать без него, выдав мне ошибку: enter image description here

Я также пытался удалить файл index.lock, но такая же ошибка была обнаружена.Я нахожусь в состоянии, когда я понятия не имею, что делать - я даже попытался удалить, и он не будет удален, потому что процесс все еще открыт без принудительного уничтожения.

1 Ответ

0 голосов
/ 28 января 2019

Это предупредило меня о том, что процессы все еще открыты.Я проигнорировал это, предполагая, что они прекратятся, когда я выйду из оболочки.Неправильно.

Windows имеет обязательную блокировку файла . Это означает, что если у процесса открыт файл, вы не можете его удалить.Что-то удерживает index.lock и выключение оболочки может не убить его.

Не видя вашу предыдущую историю Git, я не могу сказать, что это за процесс.Это может быть любое количество вещей, которые используют index.lock висит.Процесс редактирования, используемый git commit, может быть виновником.Вы можете найти процесс, который удерживает index.lock open , и убить его.

Или вы можете попробовать выключить и снова включить: т.е.перезагрузите компьютер, чтобы убедиться, что все зависшие процессы остановлены.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...