Git : le dépôt distant

Travailler avec un dépôt distant : clone, origin, branches de suivi comme origin/main, fetch, pull, push et le rejet d'un push en retard.

  • 25 cartes
  • 6 thèmes
  • Gratuit

Le programme, thème par thème

Le poids de chaque thème suit celui que lui donne l'examen.

  1. Notions
  2. Questions
  3. Ranger et relier
  4. Les étapes
  5. Mises en situation
  6. Comprendre

Quelques cartes du deck

  • Dépôt distant : de quoi s'agit-il ?

    Voir la réponse

    Copie du dépôt hébergée ailleurs, sur un serveur ou une plateforme, que l'équipe partage pour échanger ses commits.

    Chaque personne garde un dépôt complet en local. Rien n'est synchronisé automatiquement : on échange à la demande, avec fetch, pull et push.

  • Le distant a reçu deux commits. Après git fetch, où est ta branche main ?

    • Inchangée : seule origin/main a avancé
    • Avancée de deux commits, comme origin/main
    • Fusionnée avec origin/main, avec un commit de fusion
    • Remise sur l'état du distant, tes commits locaux sont perdus
    Voir la réponse

    Inchangée : seule origin/main a avancé

    fetch ne met à jour que les branches de suivi. C'est ensuite à toi de fusionner (ou d'utiliser pull) quand tu veux intégrer ces commits.

  • git … télécharge un dépôt complet avec son historique, et nomme par défaut le dépôt distant ….

    Voir la réponse

    git clone télécharge un dépôt complet avec son historique, et nomme par défaut le dépôt distant origin.

    git remote -v liste les adresses des dépôts distants configurés. « origin » n'est qu'un nom par convention, qu'on peut changer.

  • Branche de suivi (origin/main) : de quoi s'agit-il ?

    Voir la réponse

    Étiquette locale qui mémorise où était la branche main du distant lors de la dernière communication avec lui.

    Tu ne la déplaces pas toi-même : seuls un fetch, un pull ou un push la mettent à jour. Elle peut donc être en retard sur le vrai distant.

  • Publier son travail quand le distant a avancé : quelle étape vient après « git commit pour valider le travail en local » ?

    • git pull récupère ces commits et les fusionne dans main
    • Résoudre l'éventuel conflit et conclure la fusion
    • git push est cette fois accepté
    • git push est rejeté parce que le distant a des commits en plus
    Voir la réponse

    git push est rejeté parce que le distant a des commits en plus

    Le push n'est accepté que s'il ne fait qu'avancer le distant. Le pull ramène ses commits chez toi, après quoi ton historique contient le sien et le push passe.