Git - fatal: невозможно создать '/path/my_project/.git/index.lock': файл существует - PullRequest
719 голосов
/ 22 октября 2011

Я все еще получаю это сообщение об ошибке, когда пытаюсь переместить дерево моего проекта в git repo.

Я проверил разрешения моего каталога с этим проектом, и они установлены на 777. В терминале в каталоге с my_project я установил:

git init

и затем, если я попытаюсь

git add.

или

git commit -m "first upload"

, поэтому я получу сообщение об ошибке

fatal: Unable to create '/path/my_proj/.git/index.lock': File exists.

If no other git process is currently running, this probably means a
git process crashed in this repository earlier. Make sure no other git
process is running and remove the file manually to continue.

Я попытался также создать новый репозиторий и выполнить его, но, к сожалению, все еще то же сообщение об ошибке.

В чем причина проблемы?

Ответы [ 29 ]

2 голосов
/ 16 ноября 2017

НЕ ИСПОЛЬЗУЙТЕ плагин Atom platformio-atom-ide-terminal для этого. ИСПОЛЬЗУЙТЕ ТЕРМИНАЛ ВАШЕГО DISTRO ПРЯМО.

Я продолжал получать эту ошибку, когда совершал ребазинг / хлюпание, и не знал почему, потому что я делал это раньше несколько раз.

Не имеет значения, сколько раз я удаляю файл index.lock, каждый раз, когда он терпит неудачу.

Оказывается, это потому, что я использовал терминальный плагин ATOM EDITOR . Однажды я использовал терминал, который поставляется с Ubuntu, он работал как шарм.

2 голосов
/ 22 июля 2013

Решением этой проблемы является копирование трех файлов xcode / project в каталог, а затем создание нового каталога (в любом другом месте), а затем вставка трех файлов / каталогов.

2 голосов
/ 04 июля 2014

Также мы можем просто убить процесс git. Я получаю ту же проблему через приложение GUI для git, что-то идет не так, и git заставляет работать бесконечно. Процесс Killing остановит приложение, которое работает с git, просто перезапустите его, и все будет хорошо.

2 голосов
/ 04 ноября 2016

Я изменил свое разрешение на каталог, поэтому я знал, что это может быть связано с разрешением. В моем случае я удалил нежелательных (_www) пользователей, а затем применил разрешение на чтение / запись для всех, применяя изменения ко всему содержимому. Это на Mac

Directory Permission on Mac

2 голосов
/ 11 апреля 2016

В случае, если по какой-либо причине вы выполняете ребаз из папки, которая синхронизируется облачной службой (Dropbox, Drive, Onedrive и т. Д.), Вы должны приостановить или отключить синхронизацию, так как это повлияет на разрешенияво время перебазировки.

2 голосов
/ 30 мая 2016

Для меня это было

rm -r .git-credentials.lock 
1 голос
/ 06 февраля 2018

Небольшое добавление, потому что мне пришлось использовать разные ответы, чтобы получить реальное решение (для меня).

Это сделало это для меня:

  1. Открытая ветка, над которой вы работаете
  2. Открытый терминал (я использую терминал в Git GUI)
  3. Введите команду: cd .git
  4. Введите команду: rm -f index.lock

Некоторые могут использовать -Force вместо -f.Вы можете проверить командные строки вашего терминала, выполнив команду в вашем терминале что-то вроде: git help.

1 голос
/ 08 января 2018

В случае, если кто-то использует git svn, у меня возникла та же проблема, но я не смог удалить файл, так как его там не было !.После проверки прав доступа, касания файла и его удаления, и я не помню, что еще, это помогло:

  • извлечение основной ветви.
  • git svn rebase (onmaster)
  • извлечение ветки, над которой вы работали
  • git svn rebase
0 голосов
/ 11 июля 2019

Попробуйте запустить cmd от имени администратора. Это решило мою проблему.

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