IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Novembre 2022
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Analyste d'exploitation

    Informations forums :
    Inscription : Novembre 2022
    Messages : 29
    Par défaut erreur à la création d'un repo avec code déjà en local, comment rattraper le coup sans recréer un repo
    Bonjour
    j'ai en local un dossier avec plusieurs commit fait en local. j'ai pas pushé vers github car je n'ai pas créé de depot en remote.
    Du coup, j'ai décidé de créer un repo sur github.

    En general, quand je crée un repo, github me demande si je veux ajouter un readme et un gitignore, je dis non car en en général, en local, j'ai déjà un readme et un gitignore.
    ensuite, je copie-colle ce que me propose git pour pusher mon dossier, je fais
    git remote add origin REMOTE-URL
    puis je push. et tout est OK


    Mais là, pour mon dossier en cours, j'ai pas de readme ou de gitignore, donc j'ai dit à github que je voulais bien un readme et un gitignore.
    puis, depuis github, j'ai ecrit dans le readme et le gitignore.
    puis je fais
    *git remote add origin REMOTE-URL
    mais là je suis bloqué:
    je dois d'abord raparier en local le fichiers readme et gitignore non?
    si je fais git pull, j'ai peut de rapatrier ces 2 fichiers et d'effcaer tout mon script car le remote ne dispose de rien à part readme et gitgore.


    Comment je dois faire là?

  2. #2
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    Septembre 2007
    Messages
    7 504
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 504
    Par défaut
    Bonjour,

    Lance déjà un git status en local. Si tous tes fichiers se trouvent dans la section « fichiers non suivis », alors tu n'auras pas d'ennui. Ils sont considérés comme étant en dehors de l'historique et Git n'y touchera pas (Git travaille au niveau du fichier individuel, pas du répertoire dans sa totalité). Tu pourras donc faire un git pull en local pour synchroniser tes dépôts, ajouter les autres fichiers et pousser le tout.

    Si en revanche il y en a dans les autres sections ou — faire attention — que tu as déjà fait des commits en local, même si ta « copie est considéré comme propre » parce que tu as tout commité à cette heure, alors Git considérera à raison que tes branches ont divergé.

    Dans ce dernier cas, si cela s'était produit sur un dépôt déjà existant, Git détecterait qu'en remontant l'historique, les deux branches seraient parties d'un ancêtre commun et donc auraient forké. On te proposerait donc une fusion ordinaire. Les seules choses à résoudre seraient donc choisir entre les gitignore et README vides, et ceux qui contiennent quelque chose. Le choix est donc vite fait. :-)

    En revanche, ici vous partez de deux racines différentes (les commits initiaux ne sont pas les mêmes), donc il ne sait pas encore que master et origin/master sont censées être les mêmes. En outre, ta branche locale master ne serait pas encore configurée pour suivre origin/master.

    Dans cette situation, il faut déjà ajouter la branche amont avec git branch master -u origin/master. Ensuite, lors du git pull, on obtient :

    astuce: Des branches divergentes ne peuvent pas être gérées en avance rapide, vous devez soit :
    astuce: 
    astuce: 	git merge --no-ff
    astuce: 
    astuce: ou :
    astuce: 
    astuce: 	git rebase
    astuce: 
    
    On comprend que dans ce cas précis, c'est bien un rebase de sa branche locale sur le sommet de la branche distante qu'il faut faire, branche distante qui en l'état ne contient qu'un seul commit qui définit les fichiers en question. Dès lors, tes 1er, 2ème, 3ème commits, etc. deviendraient respectivement les 2èmes, 3ème, 4ème commits, etc. juste après celui du serveur, les deux parties se retrouvent sur une même ligne et les branches se retrouvent synchronisées.

Discussions similaires

  1. [OL-2010] Erreur connection lors d'envoi email avec code VBA
    Par vincent team dans le forum Outlook
    Réponses: 5
    Dernier message: 22/08/2016, 14h14
  2. [Débutant] Création d'une page avec code-behind en C#
    Par cleml12 dans le forum ASP.NET
    Réponses: 9
    Dernier message: 06/10/2011, 12h25
  3. message d'erreur avec code::blocks
    Par kamnouz dans le forum Code::Blocks
    Réponses: 5
    Dernier message: 05/01/2008, 17h55
  4. Création et utilisation de librairies statiques avec Code::Blocks
    Par somberlord dans le forum Code::Blocks
    Réponses: 1
    Dernier message: 22/07/2007, 08h58
  5. Erreur compilation avec Code Blocks
    Par Ulver dans le forum wxWidgets
    Réponses: 3
    Dernier message: 10/04/2007, 22h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo