Pod - error: cannot open .git/FETCH_HEAD: Permission denied

Je veux mettre à  jour mes pod et j'ai ce message : 


 


error: cannot open .git/FETCH_HEAD: Permission denied


 


J'ai essayé avec un sudo mais pod me dit que j'ai pas le droit de la faire via un sudo... Est-ce que ça parle à  qqu'un ?


 


Merci !


Réponses

  • AliGatorAliGator Membre, Modérateur
    Bah c'est quoi tes droits sur ton .git?


    T'aurais pas par exemple transféré ton projet via une clé USB formatée en FAT32 (qui ne gère pas les droits UNIX et donc te les perds lors du transfert) qui ferait que tes droits d'accès à  ton .git ne seraient plus bons ?
  • LeChatNoirLeChatNoir Membre, Modérateur

    drwxr-xr-x  12 LeChat  staff     408 12 sep 07:13 .git


     


    drwxr-xr-x    4 LeChat  staff     136  4 jul 09:54 refs


    drwxr-xr-x    3 LeChat  staff     102  4 jul 09:54 info


    drwxr-xr-x   11 LeChat  staff     374  4 jul 09:54 hooks


    lrwxr-xr-x    1 LeChat  staff      84  4 jul 09:54 description -> /Applications/GitHub.app/Contents/Resources/git/share/git-core/templates/description


    -rwxr-xr-x    1 LeChat  staff     138  4 jul 09:54 config


    drwxr-xr-x    4 LeChat  staff     136  4 jul 09:55 logs


    drwxr-xr-x  256 LeChat  staff    8704  9 sep 18:44 objects


    -rwxr-xr-x    1 LeChat  staff      50  9 sep 18:44 COMMIT_EDITMSG


    -rwxr-xr-x    1 LeChat  staff      30  9 sep 18:45 HEAD


    -rwxr-xr-x    1 LeChat  staff  112688 11 sep 17:55 index


     


    Par contre, j'ai pas de FETCH_HEAD...


  • AliGatorAliGator Membre, Modérateur
    Ah donc tu as les droits d'écriture sur le répertoire .git ? Je suppose que LeChat c'est ton user courant actuellement connecté et avec lequel tu essayes de faire ton git pull ?
  • LeChatNoirLeChatNoir Membre, Modérateur

    oui, c'est mon user.


    Par contre, je ne veux pas faire de git pull.


    Juste un pod update


  • AliGatorAliGator Membre, Modérateur
    Oui mais bon la commande sous-jacente qui foire c'est la commande git donc c'est elle le problème. C'est pas tant je pense un problème avec CocoaPods mais plutôt avec GIT et les permissions de ton repo du coup vu le message d'erreur.
  • LeChatNoirLeChatNoir Membre, Modérateur

    ok. Je vais creuser.


    Thxs


  • samirsamir Membre
    septembre 2014 modifié #8

    Ils disent sur internet que c'est un problème de permissions du cache CocoaPods.


     


    Essaie avec :


     


    sudo chown -R LeChat ~/Library/Caches/CocoaPods


     


    et


     


    sudo chown -R LeChat ~/.cocoapods


  • LeChatNoirLeChatNoir Membre, Modérateur

    Alors, j'ai essayé ce que samir propose : pas mieux...


    Sur le .git de mon répertoire, j'ai pas vraiment de pb de droits. Les fichiers m'appartiennent.


     


    Mais j'ai l'impression que ça cause d'un autre repo git : le repo "Master" :



    pod install
    Analyzing dependencies
    [!] An error occurred while performing `git pull` on repo `master`.
    [!] /usr/local/bin/git pull --ff-only

    error: cannot open .git/FETCH_HEAD: Permission denied

    C'est là  dessus que j'aurai des pb de droits mais je sais pas où ca se trouve ce truc...


     


    Any help ?


  • AliGatorAliGator Membre, Modérateur
    Dans ~/.cocoapods/repos


    Au pire tu fais un "pod repo remove master" pour supprimer le repo master puis un "pod setup" pour qu'il le reclone from scratch.
  • LeChatNoirLeChatNoir Membre, Modérateur

    pod repo remove master
    [!] You do not have permission to delete the master repository.Perhaps try prefixing this command with sudo.

    Je suis donc allé checker ~/.cocoapods/repos et effectivement, il appartenait à  root...


    Donc :



    chmod -R LeChat:staff ~/.cocoapods/repos

    et le remove master a cette fois fonctionné.


    pod setup et hop, c'est reparti !


     


    Merci Ali ;)


  • AliGatorAliGator Membre, Modérateur
    Ah bah du coup si il appartenait à  root ça explique !
    (dans les dernières versions de CocoaPods d'ailleurs il y a des protections pour t'éviter d'exécuter la commande "pod" en root, genre il te met un warning si tu l'utilises avec sudo pour te dire que du coup ça risque de créer des fichiers avec les droits root et pas tes droits à  toi...)

    Mais du coup, une fois que tu as compris ça et que tu as fait le chmod dessus, si ça se trouve y'avait du coup même plus besoin de faire un remove + un pod setup, ça aurait pu marcher direct ^^ Mais bon au moins t'es sûr d'être reparti d'un socle propre.
  • LeChatNoirLeChatNoir Membre, Modérateur

    oui, c'est ce que je me suis dit mais dans le doute... Ca me paraissait un peu crade de faire ce chmod -R :)


Connectez-vous ou Inscrivez-vous pour répondre.