Problème avec Moutain lion, xcode 4.4 et GIT

Bonjour,



J'ai une application qui est partagée sur un GIT sur mon serveur pro.

Tout fonctionne bien quand on est sur la version xcode 4.3 et sur lion.



Hier, j'ai installé mountain lion sur mon MACBOOK Pro, et upgradé xcode en xcode 4.4.



Je suis ensuite allé sur mon projet, fait quelques modifs que j'ai comité. J'ai voulu faire un pull pour récupérer les dernières versions de codes fait par les autres développeurs et là  xcode n'arrive plus à  retrouver le repertoire origine/master de mon projet sur le net.



Je décide donc de perdre mes modif et de supprimer le projet en local, de faire un nouveau pull complet et de recommencer.

Nicquel je retrouve bien mon projet, je fais des modifs et là  même erreur qu'au début, il ne trouve pas le projet origine/master.



Que faire pour ne pas perdre mes modifs et pour faire en sorte que cela fonctionne de nouveau ?



Merci d'avance.

Alexandre.

Réponses

  • AliGatorAliGator Membre, Modérateur
    juillet 2012 modifié #2
    Hello



    On a déjà  abordé le sujet sur le forum, mais je ne retrouve plus le thread correspondant. [EDIT]Retrouvé, c'était là [/EDIT]

    Il semble que dans Mountain Lion, la lib perl ait changé et que git soit perdu à  cause de ça.



    Au passage, comment as-tu fait tes git clone, pull, commit et push ? Depuis le terminal ? Depuis Xcode et son interface Source COntrol ? Depuis une appli tierce genre gitX ou SourceTree ? En tous les cas, quel binaire git est utilisé (un git téléchargé, le git installé avec Xcode, celui embarqué dans une appli tierce ?) et quelle version ?



    Pour résoudre le problème en tout cas :
    • Déjà  assures-toi que tu as réinstallé les "Command Line Tools" depuis que tu as mis à  jour ton Xcode en 4.4. Pour rappel, c'est dans les préférences de Xcode, onglet "Downloads".
    • Corrige le lien vers la lib perl qui a changé depuis Mountain Lion. Pour cela tu as plusieurs possibilités :
      • Modifier la variable PERL5LIB pour indiquer le nouveau chemin : dans le terminal, exécute ceci
        export PERL5LIB="/Applications/Xcode.app/Contents/Developer/Library/Perl/5.12/darwin-thread-multi-2level"
        et ensuite tu pourras exécuter git. Pour que ça soit effectif à  chaque fois sans avoir à  le retaper, le mieux est de mettre cette commande dans les fichiers d'initialisation de ton shell, genre dans ~/.bashrc.
      • Ou alors faire des liens symboliques vers les binaires et répertoires dans leur nouvel emplacement. Voir ici



    Je n'ai encore testé aucune des solutions car je suis encore pas passé à  Mountain Lion, mais il y a plusieurs blogs qui en parlent sur la toile image/wink.png' class='bbc_emoticon' alt=';)' />
  • Merci, ali.



    J'ai fait le pull avec xcode version 4.4 depuis le source control, et c'est

    J'ai fait les manips indiquées. Malheureusement, cela ne suffit pas. Faut-il que le 1er pull soit refait avec cette nouvelle config ?

    Message quand je fais le pull : No remotes Found.
  • AliGatorAliGator Membre, Modérateur
    OK au temps pour moi, la solution que j'ai citée c'est dans le cas où tu as le problème où git ne peut pas se lancer et t'affiche une erreur car il ne trouve pas la lib perl.



    Là  ton problème est autre, puisque le message d'erreur est "no remotes found".



    Apparemment d'après mon ami Google, c'est dû au fait que le nouveau git se débrouille plutôt mal avec les repositories qui utilisent des adresses IP directement plutôt que des noms de domaine.

    Quand tu fais ton clone / premier pull, remplace l'IP par le nom DNS du serveur (s'il n'en n'a pas, tu peux toujours créer une entrée dans le fichier /etc/hosts sur ton Mac pour associer un nom à  l'adresse IP et utiliser ce nom du coup)
  • Bon Ali,



    J'ai fait le premier pull en remplaçant l'ip du serveur avec le nom que j'ai associé dans le fichier hosts et j'ai bien réussi à  faire le 1er pull. Mais le second pull ne fonctionne toujours pas.
  • AliGatorAliGator Membre, Modérateur
    Ah. Là  je sèche :-/
  • moi aussi, surtout que par la ligne de commande cela fonctionne. Par contre, je ne sais pas comment cela va être gérée quand il y aura des conflits.
  • AliGatorAliGator Membre, Modérateur
    Ah par la ligne de commande ça fonctionne ? Tu n'avais pas précisé ça !

    C'est que via le module de Source Control intégré à  Xcode que tu as le problème ?!
  • Je n'avais pas essayé quand j'ai posté. Je me suis donc dis que cela fonctionnerait peut être avec la ligne de commande et effectivement cela fonctionne.

    Donc oui ce n'est qu'avec xcode 4.4 et xcode 4.5 sous mountain lion que cela ne fonctionne pas.
Connectez-vous ou Inscrivez-vous pour répondre.