Problème de configuration de l'erreur git: impossible de verrouiller le fichier de configuration


13

J'obtiens cette erreur lorsque j'essaie de définir la configuration globale:

$ git config --global user.name "Your Name Here"
error: could not lock config file /pathto/file/.gitconfig: No such file or directory

et le fichier .gitconfig existe déjà, quelqu'un a des idées ??


Avez-vous une autorisation de lecture / écriture sur ce fichier? (Vérifier en utilisant ls -la /path/to/file/.gitconfig)
Salem

-rw-rw-r-- 1 .gitconfig
codepros

Utilisez-vous en tant qu'utilisateur correct? Quel utilisateur possède .gitconfig?
Flimm

Réponses:


14

Voyez si l'un de ces conseils vous aide à:

  1. Vérifiez s'il y a un fichier appelé ~/.gitconfig.lock. Si tel est le cas, supprimez-le.

  2. Le fichier vous ~/.gitconfigappartient (utilisez ls -la ~/.gitconfigpour vérifier). Si ce n'est pas le cas, vous pouvez modifier la propriété à l'aide desudo chown <your_username>:<your_username> ~/.gitconfig

Si aucune de ces solutions ne résout le problème, vous pouvez toujours modifier ~ / .gitconfig à l'aide de votre éditeur de texte préféré. C'est juste un fichier de type INI. Un exemple:

$ cat ~/.gitconfig
[user]
    name = my_username
    email = me@email.com
[core]
    editor = editor
    pager = most
[color]
    ui = auto
[merge]
    conflictstyle = diff3

Je suppose que l'emplacement correct est ~/.gitconfig. Si ce n'est pas le cas, remplacez-le par le chemin correct.

J'espère que cela aide.


il n'y a pas de fichier nommé .gitconfig.lock dans le répertoire personnel et .gitconfig existe déjà ~ /
codepros

et où est .gitconfig? Dans ~ / .gitconfig? Si tel est le cas, essayez de le modifier à la main.
Salem

@Salem, j'ai le .gitconfig dans le ~ / mais l'erreur est toujours là. Aucun conseil?
uday

3

Dans mon cas, il y a un .git/config.lockfichier dans mon git repo. J'ai supprimé ce fichier et cela a résolu le problème.


2

Vous devez posséder le répertoire dans lequel se trouve .gitconfig:

chown -R <user>.<user> /pathto/file/

C'est ce qui a fonctionné pour moi.


1

Mon problème était similaire au vôtre. J'ai trouvé que l'utilisateur "git" n'était pas en mesure d'accéder à son répertoire personnel.

Je l'ai fait chown -R git:git /mnt/sdb1/gitet cela a résolu l'erreur de permission.


0

Pour mon cas, mon ~/.gitconfigfichier pointait (lien symbolique) vers mes anciens fichiers dot, que j'avais déplacés vers un autre emplacement, ce qui signifiait qu'il gitconfigpointait vers un fichier inexistant.

Pour savoir où gitconfigétait mon lien symbolique, je l'ai fait ls -la ~/.gitconfig, ce qui montrait qu'il pointait vers un fichier que j'avais déplacé ailleurs.

J'ai dû mettre à jour le lien symbolique vers mes nouveaux dotfiles (dotfiles n'est qu'un nom de dossier de tous mes fichiers .smth).

Pour mettre à jour le lien symbolique, je l'ai fait ln -sf ~/your-new/path-to/gitconfig.symlink ~/.gitconfig

Tout a bien fonctionné


0

Dans mon cas, l'erreur était:

error: could not lock config file .git/config: No such file or directory

Je l'ai résolu en créant le .gitrépertoire:

mkdir -p ~/.git
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.