8
votes

GIT: "AVERTISSEMENT: changer un fichier lisonly"

Lorsque je vais commettre des modifications à une succursale en utilisant, xxx

vim est ouvert et je vais insérer mon message de validation. Je reçois cet avertissement dans le terminal: xxx

afin de continuer avec le COMMIT, je dois forcer l'écriture en utilisant : x! dans Vim , mais sinon, aucun problème n'est rencontré.

au moins, cela semble être juste une gêne. Est-ce que quelqu'un sait ce qui se passe et / ou comment résoudre ce problème?

J'utilise Cygwin sur Windows 7.


7 commentaires

Peut-être que vim est invoqué en mode lecture seule. Quels sont les git config configène -get -global core.editor $ éditeur défini sur?


Sinon, est le message de validation d'un fichier lisonly? Quel est ton umask?


Mon monask est 0022 , alors cela signifie-t-il si je n'ai pas créé le fichier de message commette, je ne peux pas y écrire?


Non, 0022 est raisonnable. Est-ce que .git / commit_editmsg existe et quels sont ses attributs?


Il existe et ses autorisations sont les suivantes: -r-xr-xr-x + ... très étrange de n'avoir aucune autorisation d'écriture, je devine. Que devrait-il être réglé?


0644 ( -rw-r-r - ) est approprié pour les fichiers texte. Vous pouvez essayer de simplement le supprimer.


Semble fonctionner. Postez-le comme une réponse et je vais accepter.


3 Réponses :


6
votes

Si le fichier .git / commit_editmtsg existe et est en lecture seule, la chose la plus simple à faire est de la supprimer - git le recréera si nécessaire.


0 commentaires

1
votes

J'ai eu le même problème ... mais il y avait une instance VI qui fonctionne toujours avec ce fichier ouvert. NON où sur l'écran, j'ai trouvé cette instance ... Alors je l'ai tué.


0 commentaires

1
votes

Suppression du fichier ne le corrige pas pour moi. Régler manuellement la configuration core.editor a fait. Après avoir exécuté cette commande, le problème est parti pour moi.

git config --global core.editor "vim"

Je ne sais pas pourquoi, mais c'est ce qui a finalement résolu le problème. $ Editor a été défini sur "Vim" précédemment et Core.editor a été indéfini avant ce correctif.


0 commentaires