GIT:/.git/index.lock ': файл существует

У меня постоянная проблема с одним из моих репозиций git. Я продолжаю получать следующую ошибку:

    fatal: Unable to create 'v:/path/to/files/.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.

Я пробовал: rm -f./. git/index.lock в соответствии с другим потоком в stackoverflow, но каждый раз получаю эту ошибку: rm: не могу отменить связь.. /. git/index.lock ': разрешение отклонено

Когда я закрываю aptana (я использую git в терминале), я не могу удалить файл еще.

Любые идеи, как обойти это?

Еще одна вещь, которую следует отметить, - это git repo очень медленно, когда я иногда получаю возможность совершать внутри него (он позволяет мне каждые 10 попыток или около того)

Спасибо

Ответы

Ответ 1

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

Я прекратил использовать студию aptana, и у меня больше нет этой проблемы.

Ответ 2

Судо команда:

sudo rm -f ./.git/index.lock

Обе ошибки предполагают, что index.lock принадлежит другому пользователю. Запустите rm как суперпользователь, затем повторите попытку. Вы также можете рассмотреть возможность установки core.sharedRepository на true, если это, по сути, случай с вашим репо:

core.sharedRepository

Когда группа (или true), репозиторий становится доступным между несколькими пользователями в группе (убедитесь, что все файлы и объекты записаны на группы).

Когда все (или мир или все), репозиторий будет доступен для чтения всем пользователям, кроме того, он будет доступен для групповой работы. Когда umask (или false), git будет использовать разрешения, сообщаемые umask (2). Когда 0xxx, где 0xxx - восьмеричное число, файлы в репозитории будут иметь это значение. 0xxx переопределит значение umask пользователя (тогда как другие параметры будут только переопределять запрашиваемые части значения umask пользователя). Примеры: 0660 сделает репо для чтения и записи для владельца и группы, но недоступен для других (эквивалентно группе, если только umask не является, например, 0022). 0640 - это репозиторий, который является читаемым для групп, но не доступен для групп.

См. git -init (1).

Ложно по умолчанию.

Ответ 3

Вы также получите эту ошибку, если используете Aptanta Git и другие Git клиенты, например f.e. TortoiseGit. Поэтому вполне вероятно, что это другое программное обеспечение Git заблокировало ваш Git, что делает его недоступным для Aptana.

Ответ 4

Сделайте это:

rm index.lock

за которым следует

git reset

Ответ 5

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

В linux/unix/gitbash/cygwin попробуйте

rm -f .git/index.lock

В командной строке Windows попробуйте:

del .git\index.lock

Надеюсь, что это поможет, я нашел это решение здесь: fatal: Не удалось создать 'project_path/.git/index.lock': Файл существует.

Ответ 6

В git версии 2.11.0 папка .git не может содержать файл index.lock. Я понял, что в папке .git/refs/heads/ содержится файл .lock, и его удаление с помощью команды rm работает.

Также не забудьте убить процесс, который может использовать репо git с помощью ps -aef | grep git и kill -9.

Ответ 7

Если вы столкнулись с этими проблемами в окнах ниже, вам помогут. Перейдите к конкретному пути i.e, v:/path/to/files/и включите отображение скрытых файлов, папок и драйверов. Затем сразу удалите файл index.lock внутри папки git (которая будет скрыта ранее)

Ответ 8

найдите index.lock в локальном репозитории и удалите этот файл.