Sur ma machine Windows, lorsque je tire mon dépôt, je reçois:
error: unable to crate file <path to file> (Permission denied)
Je pense que le problème peut être que lorsque je regarde les propriétés du dossier, il y a un carré à l'intérieur de la case à cocher, je le nettoie de sorte qu'aucun fichier ou dossier ne soit en lecture seule.
Après avoir appuyé sur ok et vérifié si Windows a appliqué mes modifications, je revois le carré!
Comment puis-je obtenir que Git ou Windows me permettent d'obtenir mes commits?
Exécutez Git Bash ou la console que vous utilisez avec Run As Administrator
Vérifiez si une autre application utilise vos fichiers et tuez-la. Dans mon cas, c’était grunt , toujours attentif aux changements et au projet de construction. M'a donné le même message que le vôtre, lors de la suppression de fichiers.
Comment cela s'est passé? Lorsque je suis passé à une autre branche, des fichiers non existants sont apparus dans ma copie de travail. Je ne pouvais pas les jeter, ni les ouvrir dans l'éditeur de texte.
Dans ma situation avec le même problème, c'était un autre programme (Atom) qui bloquait les fichiers. La fermeture a aidé.
Donc, vérifiez si un autre programme, éditeur de code utilise les mêmes fichiers, si oui - désactivez-le.
Je viens d'avoir ce genre d'erreur après avoir abandonné un rebase. Il s'est avéré qu'un processus git
orphelin bloquait un fichier dans le répertoire .git
.
Sinon, un script de cette réponse pourrait également être utile.
En ajoutant ceci comme pour moi, aucune des réponses ci-dessus n'a fonctionné: si vous l'avez installé, vérifiez les paramètres de Bitdefender (ou un autre logiciel de sécurité que vous avez). Il fonctionne avec des dossiers protégés et peut bloquer toute tentative de manipulation de fichiers. Lorsque vous utilisez, par exemple, git bash, des commandes telles que rm, vim, etc., comptent toutes comme des commandes distinctes et nécessitent des autorisations distinctes, et pas seulement celle de bash.exe.
Désactiver Windows UAC semblait faire l'affaire.
Git Bash sous Windows 10. Le fichier n'étant pas en lecture seule, j'ai donc fermé la fenêtre bash, puis rouvert et tout a fonctionné.