Я получаю эту ошибку при попытке установить глобальную конфигурацию:
$ git config --global user.name "Your Name Here"
error: could not lock config file /pathto/file/.gitconfig: No such file or directory
и файл .gitconfig уже существует, у кого-нибудь есть какие-либо идеи?
В моем случае в моем git-репозитории есть файл .git/config.lock
. Я удалил этот файл, и он решил проблему.
Моя проблема была похожа на вашу. Я обнаружил, что пользователю "git" не удалось получить доступ к его домашнему каталогу.
Я сделал chown -R git:git /mnt/sdb1/git
, и это решило ошибку разрешения.
Посмотрите, поможет ли вам какой-либо из этих советов:
Проверьте, есть ли файл с именем ~/.gitconfig.lock
. Если это так, просто удалите его.
Файл ~/.gitconfig
принадлежит вам (используйте ls -la ~/.gitconfig
для проверки). Если это не так, вы можете изменить владельца, используя sudo chown <your_username>:<your_username> ~/.gitconfig
Если ни один из них не решает проблему, вы всегда можете отредактировать ~ / .gitconfig, используя ваш любимый текстовый редактор. Это просто INI-подобный файл. Пример:
$ cat ~/.gitconfig
[user]
name = my_username
email = me@email.com
[core]
editor = editor
pager = most
[color]
ui = auto
[merge]
conflictstyle = diff3
Я предполагаю, что правильное местоположение - ~/.gitconfig
. Если это не так, замените его на правильный путь.
Надеюсь, это поможет.
Вы должны владеть каталогом, в котором находится .gitconfig:
chown -R <user>.<user> /pathto/file/
Вот что сработало для меня.
Для моего случая, моего ~/.gitconfig
файл указывал (symlinked) на мой старый dotfiles, который я переместил в другое местоположение, имея в виду gitconfig
указывал на несуществующий файл.
Знать где мой gitconfig
был symlinked к, я сделал ls -la ~/.gitconfig
, который показал, что это указывало на файл, я переместился в другое место.
Я должен был обновить символьную ссылку на свой новый dotfiles (dotfiles, просто имя папки всех моих .smth файлов).
Для обновления символьной ссылки я сделал ln -sf ~/your-new/path-to/gitconfig.symlink ~/.gitconfig
Все затем работало хорошо
В моем случае ошибка была:
error: could not lock config file .git/config: No such file or directory
Я решил его путем создания .git
каталог:
mkdir -p ~/.git
В моем случае мне пришлось удалить файл config.lock в папке .git / репозитория git.