Неустранимый: невозможно создать 'refs /heads / master.lock': Файл существует Неустранимый: - Получение этой ошибки при нажатии на коммиты - PullRequest
17 голосов
/ 14 декабря 2011

Я получаю следующую ошибку при нажатии на коммит

$ git push origin master
fatal: unable to create 'refs/heads/master.lock': File exists fatal:
The remote end hung up unexpectedly

Я думал об удалении файла блокировки (refs/heads/master.lock) с моей локальной машины.Но этот файл недоступен.Я думаю, что этот файл находится в git server.

Каково происхождение этой проблемы?Если я удалю этот файл с сервера, решит ли он проблему, если файл существует?

Ответы [ 4 ]

18 голосов
/ 10 ноября 2014

Вам необходимо удалить существующий .lock файл и попытаться нажать,

Linux

rm -f .git/refs/heads/master.lock

Windows

del .git\refs\heads\master.lock
7 голосов
/ 14 декабря 2011

Это потому, что какая-то другая операция git, возможно, умерла (или даже все еще работала в редких случаях) в середине и оставила файл блокировки.Как только вы увидите, что на сервере не запущен ни один процесс, связанный с git, просто для безопасности вы можете удалить файл и повторить попытку.

1 голос
/ 25 сентября 2017

Для тех, кто заходит на эту страницу с этой проблемой, но не может использовать принятое решение, поскольку файл не существует для удаления, это, вероятно, проблема с разрешениями.

Этот вопрос SO должен быть полезным.В моем случае я работал как с root, так и с обычной учетной записью пользователя на разных терминалах и, должно быть, сделал что-то как root и вызвал проблемы, подобные предложенным в связанных ответах.Решением было исправить права доступа в моем каталоге git к пользователю.

0 голосов
/ 25 января 2017

Я только что использовал sudo перед коммитом, и это сработало. То есть "sudo git commit -am'commit message '"

...