Устранение неполадок git с моей учетной записью GitHub: не удалось заблокировать файл конфигурации
Я получаю эту ошибку при попытке установить глобальную конфигурацию:
$ git config --global user.name "Your Name Here"
error: could not lock config file /pathto/file/.gitconfig: No such file or directory
и файл .gitconfig уже существует, у кого есть какие-то идеи?
Ответы
Ответ 1
Немного как в Проблема с настройкой Tower с моей учетной записью GitHub - ошибка: не удалось заблокировать файл конфигурации", проверьте, как этот файл ~/.gitconfig
был создан.
Т.е.: с какими правами связаны с ним?
Убедитесь, что ваша переменная $HOME
установлена правильно, когда вы выполняете команду git config --global
.
Ответ 2
Проверьте, есть ли в вашей домашней папке каталог .git, а если нет:
mkdir ~/.git
Решил проблему в моем случае.
Ответ 3
Я получил эту ошибку, когда файл блокировки существует для gitconfig. Попробуйте найти и удалить .gitconfig.lock(в моем Linux-окне это было в моем домашнем каталоге)
Ответ 4
просто выполните "Запуск от имени администратора"... вам нужно запустить программу в режиме администратора в Windows
Ответ 5
Пользователи Windows. Убедитесь, что переменные среды правильно настроены.
У меня было следующее для моего имени пользователя "paperclip":
My Computer (right-click) > Properties > Advanced (tab) > Environment Variables (under System Variables)
:
HOME -> %HOMEPATH%
HOMEPATH -> C:\Documents and Settings\paperclip
Кажется, что Git не удалось разрешить/развернуть %HOME%
до %HOMEPATH%
, как вы ожидали. Вместо этого мне нужно было сделать %HOME%
так же, как %HOMEPATH%
, изменив его на:
HOME -> C:\Documents and Settings\paperclip
Ответ 6
В Windows:
Щелкните правой кнопкой мыши по значку Git Bash "- > Запуск от имени администратора.
это помогло мне.
Git пытается создать файл конфигурации на диске C:/, но у него нет разрешения на это.
Ответ 7
Это произойдет, если домашний каталог пользователя недоступен для записи пользователем. git config --global
необходимо создать файл блокировки (~/.gitconfig.lock
) в домашнем каталоге пользователя.
Проверьте разрешения и попробуйте создать их.
# cat ~/.gitconfig.lock
cat: /home/users/developer/.gitconfig.lock: No such file or directory
# touch ~/.gitconfig.lock
## Now check, if a file has been created?
# cat ~/.gitconfig.lock
#
ПРИМЕЧАНИЕ: Если это удастся, вы должны удалить этот файл, иначе git выдаст еще одну ошибку!
Если у пользователя нет разрешения на создание этого файла, необходимо проверить и изменить разрешения для домашнего каталога.
Ответ 8
Обновите клиентский плагин Git. Это сработало для меня =)
https://issues.jenkins-ci.org/browse/JENKINS-21016
Ответ 9
У меня есть "опытная" эта ошибка в Windows, потому что мое имя (и, следовательно, %HOMEPATH%
) содержит символ не ascii (é
). Либо git, либо cmd.exe или что-то еще не справляется с этим.
Ответ 10
Это может быть вызвано наличием ~/.gitconfig.lock. Возможно, этот файл может быть артефактом ранее запущенного git, который по какой-то причине был прерван, например. время от времени или ^ C
Ответ 11
Просто используйте следующую команду, если хотите установить конфигурацию на системном уровне:
$ sudo git config --system user.name "my_name"
Ответ 12
Для меня проблема не в git config, но в моем текущем репо была создана директория .git, и я пытался что-то сделать с моим другим пользователем. Я изменил perm
Ответ 13
Это старый пост, но у меня недавно была эта проблема, но я решил ее не так, как все остальные. Я получил ту же ошибку, потому что у меня не было разрешения на путь $ HOME на моем компьютере. Просто получив доступ к папке с помощью двойного щелчка по папкам в ваших файлах, мне предложили поставить флажки о том, что я получу постоянный доступ к этим папкам после первого входа в них. После того, как я получил доступ к самой глубокой папке в моей переменной $ HOME, команда сработала.
Ответ 14
Вы также можете попробовать ввести команду, находясь в вашем домашнем каталоге.
Ответ 15
Я переименую файл .gitconfig в xyz.gitconfig, затем git сгенерирует новый файл .gitconfig, этот wokrd
Ответ 16
В моем случае файл .git/config
был создан не в моем каталоге $HOME
, а в моем репозитории на .git/config.lock
Удаление файла устранило проблему. Файл создается, когда я переключаю ветки с помощью git checkout -f branchname
а файлы из недавно созданного субмодуля были перезаписаны git checkout.
$ git branch --set-upstream-to=origin/branchname
error: could not lock config file .git/config: File exists
error: Unable to write upstream branch configuration
hint:
hint: After fixing the error cause you may try to fix up
hint: the remote tracking information by invoking
hint: "git branch --set-upstream-to=origin/branchname".