Ответ 1
Проверьте, какой пользователь владеет блокировкой git:
ls -la /Applications/MAMP/htdocs/my_site/.git/index.lock
Затем вы можете использовать sudo
, чтобы удалить его.
Я полностью зациклился на том, почему мой git полностью заблокировал меня. У меня есть ноутбук, который я использую на работе, и когда я дома. Для обеих учетных записей я широко использую git, и оба они расположены по разным путям. Сегодня я пришел на работу, и я ничего не могу сделать, все, что я вижу, это:
/Applications/MAMP/htdocs/my_site/.git/index.lock': Permission denied
Для меня все, что касается меня, я могу удалить. Я попытался удалить ветку, проверить другую ветку, удалив файл index.lock(как это было предложено другими пользователями на сайтах). У меня только окно терминала открыто, никаких других возможных программ с использованием git (насколько я знаю и ничего не заметен в окне активности). Я перезагрузил компьютер прямо в свой рабочий счет и все равно не повезло. Как удалить эту блокировку?
Проверьте, какой пользователь владеет блокировкой git:
ls -la /Applications/MAMP/htdocs/my_site/.git/index.lock
Затем вы можете использовать sudo
, чтобы удалить его.
У меня была точно такая же проблема, когда я хотел зафиксировать свои изменения в git, и решил ее следующим образом:
Мне нужно было изменить группу моей папки .git
и ее содержимое:
sudo chown -R <owner>:<group>.git
необходимо изменить разрешение этой папки:
sudo chmod -R 775.git
После обновления xcode вам может быть предложено согласиться с новой лицензией.
git init
Соглашаясь с лицензией Xcode/iOS, требуются привилегии администратора, повторите запуск с правами root через sudo.
Когда вы это сделаете
sudo git init
вы получите пользователя root.git dir
drwxr-xr-x 10 root XXXX 340 25 Sep 12:40.git
Если вы вызываете другие команды git, которые создают файлы, эти файлы также создаются для пользователя root.
Измените разрешения или удалите .git, если он вам не нужен.
= > Никогда не звоните git с sudo!!! Если вас попросят просто вызвать git в пустом каталоге
mkdir foo
cd foo
sudo git init
У меня возникла эта проблема, когда я запускаю следующую команду: sudo git fetch && git checkout<branch>
Обратите внимание, что второе sudo пропало. Выполнение следующего решило проблему: sudo git fetch && sudo git checkout<branch>
Вам не нужно менять владельца каталога .git при запуске sudo.
У меня возникла та же проблема при попытке обновить подмодули моего репо:
$ git submodule update
fatal: Unable to create '.../.git/modules/deps/luajit/index.lock':
Permission denied
Unable to checkout '04dc64b558025e76a820f89a8e41840bf8269f32' in
submodule path 'deps/luajit'
Кажется, проблема была в том, что подмодули принадлежали другому пользователю, поэтому я вернул себе право собственности:
cd .git/modules/
chown -R user.group *
Моя компьютерная система Windows. Когда я открываю WSL удаленный vscode и локальный vscode по этому пути, система показывает эту ошибку. Я закрываю удаленный vscode WSL и решаю эту проблему.
Проверка разрешения, безусловно, путь. Я столкнулся с этой ошибкой, когда вошел в систему с неправильной учетной записью. Итак, ответ из моего личного опыта:
Msgstr "Убедитесь, что вы вошли в систему с правильной учетной записью".