Как разрешить отказ в разрешении Git /.git/index.lock

Я вошел в систему как пользователь-администратор, но не могу загружать файлы в репозиторий git. Я продолжаю получать:

fatal: Unable to create '.../.git/index.lock': Permission denied

Я пробовал ls -la .git/index.lock, но получил ошибку несуществования.

Я не нашел ничего, чтобы исправить это. У кого-нибудь есть предложения?


person 4thSpace    schedule 19.11.2019    source источник
comment
Отвечает ли это на ваш вопрос? удалить .git/index.lock': разрешение отклонено   -  person Dawnkeeper    schedule 19.11.2019
comment
Нет. Я нахожусь в папке репозитория и вижу скрытую папку .git. Когда я запускаю ls -la /.git/index.lock, я получаю Нет такого файла или каталога. Я просто удалил локальный репозиторий и скачал его снова. На этот раз я могу зарегистрироваться. Возможно, все предыдущие рекомендации + удаление исправили это. Кто знает.   -  person 4thSpace    schedule 19.11.2019
comment
Надеюсь, вы сделали ls -la .git/index.lock, а не ls -la /.git/index.lock. В противном случае он мог бы существовать, но вы, возможно, случайно посмотрели не в то место.   -  person GoodDeeds    schedule 19.11.2019
comment
Ни один не работал.   -  person 4thSpace    schedule 19.11.2019
comment
Ваша операционная система запрещает Git создавать файл index.lock в этом каталоге (или папке). Поскольку вы используете MacOS, это не какая-то сумасшедшая штука с Windows. Проверьте владельца и права доступа к каталогу .git (ls -ld .git).   -  person torek    schedule 19.11.2019


Ответы (3)


Быстрый способ — удалить файл.

cd <repo-dir>
rm -rf .git/index.lock

Возможно, вы захотите правильно настроить разрешения.

sudo chown -R <owner>:<group> .git # set group
sudo chmod -R 775 .git # access rights

Из интернет-поиска

Когда вы выполняете команду Git, которая редактирует индекс, Git создает новый файл index.lock, записывает изменения, а затем переименовывает файл. Файл index.lock указывает другим процессам Git, что репозиторий заблокирован для редактирования.

person Anubhav    schedule 19.11.2019
comment
Как вернуть файл после удаления? Я попробовал тянуть, и он не появился снова. - person 4thSpace; 19.11.2019
comment
Вам это не нужно. Дай мне проверить. - person Anubhav; 19.11.2019

После безуспешного запуска нескольких командных строк я удалил файл index.lock. Затем запустил больше команд без везения. Затем я удалил локальный репозиторий и снова загрузил. На этот раз все работает, и я могу проверить файлы.

person 4thSpace    schedule 19.11.2019

Попробуйте удалить файл index.lock в вашем каталоге .git.

person M Karimi    schedule 04.03.2020