Git sur un projet initialement sans

RomheinRomhein Membre
octobre 2015 modifié dans Xcode et Developer Tools #1

Bonsoir tous le monde !


 


Petit pour faire un commit pour la première sur un projet qui n'utilisait pas à  la base de git.


J'ai suivi les conseils de ce site :


 


http://belencruz.com/2014/12/create-a-git-repository-from-an-existing-xcode-project/


 


Puis quand je fais le commit initial Xcode me renvoi ça comme erreur :


 



 


This working copy "HB Laura!" failed to commit files.


Couldn't communicate with a helper application.



 


J'ai vu que apparement il y a un problème :


https://forums.developer.apple.com/message/10106#10106


Et que certains ont résolu le problème :


http://stackoverflow.com/questions/14694662/xcode-and-git-source-control-the-working-copy-xxxxx-failed-to-commit-files


 


Mais pour ma part même après avoir suivi les différents conseils, ça ne fonctionne toujours pas...


Une idée ?


 


 


EDIT :


 


Je pige pas trop comment ça fonctionne tout ça en réalité... Si je sélectionne les fichiers dans mon navigateur, clic droit puis commit, là  ça fonctionne. Si je le fais depuis le menu source control, ça me donne le message d'erreur...


Mots clés:

Réponses

  • Perso, je n'ai jamais géré git avec Xcode.


    J'utilise SourceTree.


  • AliGatorAliGator Membre, Modérateur
    Pareil. Je trouve l'interface de Xcode pour la gestion de version déroutante et perfectible.


    Le seul usage que je fais des fonctionnalités de Gestion de Version de Xcode c'est quand je passe en mode Comparaison sur un fichier pour voir les changements côte à  côte entre mon fichier a l'état actuel et une version précédente. Et c'est un cas d'usage plutôt rarissime.


    J'ai toujours trouvé SourceTree bien plus clair et mieux foutu. Et puis c'est un outil dédié, avec une représentation graphique claire des commits, gratuit, que demander de plus ?
  • SourceTree aussi chez moi.


     


    XCode pour du Blame (afin de savoir à  qui est la ligne, et ça aide à  trouver le commit associé avec date + raison) et Compare.


     


    Mes collègues commitent parfois avec XCode.


  • CéroceCéroce Membre, Modérateur

    Alors, moi j'ai un avis complètement inverse. Xcode me permet de faire l'essentiel: commit, merge, push et pull.


     


    git est difficile à  utiliser en ligne de commande, donc un client est bienvenu. Mais je n'aime pas SourceTree. L'interface est mal fichue, et il n'aide pas à  régler les problèmes. Il y a des alternatives, comme Tower, ou encore gitup qui est gratuit, et que j'utilise ces derniers temps.

  • CéroceCéroce Membre, Modérateur
    octobre 2015 modifié #6

    Pour en revenir au problème, d'après ce que tu dis, tu parviens à  faire en ligne de commande



    git init
    git add .

    mais pas 



    git commit -m "Initial commit"

    Parce qu'avant de partir dans les délires de Xcode et essayer de faire un push (vers quoi ??), il faut déjà  que ça fonctionne en local.


  • oui c'est exactement ça Ceroce.


    Perso je trouve sympa de tout avoir dans un même univers. ça évite d'avoir des logiciels à  maintenir dans tous les sens... Mais ça a le mérite, quand l'un marche pas de pouvoir se rattraper sur autre chose :) DOnc si j'y arrive vraiment pas avec xcode je vais regarder Source Tree.


  • CéroceCéroce Membre, Modérateur
    octobre 2015 modifié #8

    si tu n'arrives pas à  faire le commit en ligne de commande, le problème est là , et c'est là  qu'il faut le résoudre.


    Commence par un



    git status

    pour en savoir un peu plus.


    Tu peux aussi tenter un



    rm -rf .git

    pour supprimer le répertoire git, puis réessaye les commandes.


  • ok je regarde ça ce soir pour le statut, mais j'ai déjà  essayé de supprimer le répertoire git. J'ai toujours le même message d'erreur.


  • J'utilise Xcode lorsque je travaille en local sur des projets perso mais SourceTree maintenant sur mon lieu de travail. Je suis ni fan ni déçu par ce client.


    On m'avait montré un client il y a plusieurs mois qui était très beau mais qui n'était à  priori pas aussi complet que SourceTree. si je retrouve je mettrais le lien.


  • bon eh bien j'ai supprimé le répertoire, redémarré, réessayé => même résultat...


    j'ai supprimé le répertoire, redémarré, réessayé en ligne de commande puis ensuite avec l'interface xcode => ça fonctionne...


    Donc ça doit être un problème d'xcode. Il y a justement un poste sur le forum dev d'apple ouvert à  ce sujet.


     


    Pour l'utilisation que j'en ai actuellement xcode me suffit, je testerai néanmoins source tree ce wd.


     


    D'ailleurs ça n'a pas grand chose à  voir mais je voulais savoir si c'était une pratique courante chez vous de faire ça :


    J'ai une partie de mon modèle qui s'occupe de chercher les flux rss, les parser et les ordonner. Du coup je me suis dis que j'allais essayé de rendre ces classes génériques au maximum pour en faire un repository sur gihub.


    Donc j'ai créé un nouveau projet avec un exemple d'intégration du model. Je l'ai mis sur github, et maintenant j'aimerai rendre l'installation dispo par cocoapod, puis réintégrer cette librairie dans mon projet initial, et supprimer les fichiers initiaux (qui sont les même au final) de mon projet. ça me parait pratique et assez propre comme intégration, et je voulais savoir si c'est ce que vous faisiez ou si je suis à  coté de la plaque.


  • SmySmy Membre
    octobre 2015 modifié #13
    J'arrive après la bataille car tu as trouvé le problème, mais voici ma procédure pour mes anciens projets non git :

     

    - Dans le répertoire du projet, en ligne de commande :

    git init

    - Puis tu édites .git/info/exclude et tu y ajoutes

    .DS_Store

    UserInterfaceState.xcuserstate

    - Enfin

    git add .

    git commit -m "First commit"

     

    Les exclusions sont celles par défaut pour les nouveaux projets git depuis Xcode...

  • Oui Romain, je gère des pods private aussi.


    Attention à  bien être yagni néanmoins ;-)
  • Je regarde l'application Github, J'ai regardé avec Xcode 9 vite fait c'est vrai que c'est différent dès la création du projet, pas d'erreur indiquée non plus, mais pas truc dans Github ?


  • Joanna CarterJoanna Carter Membre, Modérateur
    septembre 2017 modifié #16

    Gercofis, je viens de séparer le sujet. Tu peux reposter ta réponse dans le nouveau sujet - Installation de GitHub. Je le supprimerai d'ici après


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