Git Pull
Dernière mise à jour
git pull met à jour votre branche actuelle avec les derniers commits de son dépôt distant. En interne, il exécute git fetch pour télécharger les changements, puis git merge pour les intégrer, donc git pull = git fetch + git merge. Ajoutez --rebase pour rejouer vos commits locaux par-dessus au lieu de créer un commit de fusion.
Essayez ceci dans le terminal playground : un vrai shell dans votre navigateur, rien à installer.
Syntaxe
| Command | What it does |
|---|---|
git pull | Récupère et fusionne le distant de la branche actuelle |
git pull origin main | Récupère une branche précise depuis un distant |
git pull --rebase | Récupère, puis rebase vos commits par-dessus |
git pull --ff-only | Ne récupère que si un fast-forward est possible (sans fusion) |
git pull --no-rebase | Force une fusion même si le rebase est le comportement par défaut |
Cas courants
| Goal | Command |
|---|---|
| Obtenir les dernières modifications sur votre branche | git pull |
| Garder un historique linéaire | git pull --rebase |
| Abandonner un pull qui a rencontré des conflits | git merge --abort |
| Supprimer les commits locaux et s'aligner sur le distant | git fetch puis git reset --hard origin/main |
FAQ git pull
Que fait réellement git pull ?
Il télécharge les derniers commits du distant pour votre branche actuelle et les intègre dans votre branche locale. C'est un raccourci pour deux commandes :
git fetch (télécharger) suivi de git merge (intégrer). Si vous le configurez, l'étape de fusion devient un rebase.Quelle est la différence entre git pull et git fetch ?
git fetch télécharge uniquement les changements distants et met à jour vos branches de suivi distantes, sans toucher à votre branche de travail. git pull effectue ce fetch puis fusionne les changements dans votre branche actuelle. Utilisez fetch pour examiner d'abord les changements entrants ; utilisez pull pour les récupérer et les intégrer en une seule étape.Qu'est-ce que git pull --rebase et quand l'utiliser ?
git pull --rebase récupère les commits distants puis rejoue vos commits locaux par-dessus, au lieu de créer un commit de fusion. Il garde l'historique linéaire, ce que beaucoup d'équipes préfèrent. Utilisez-le lorsque vous avez des commits locaux non poussés et que vous voulez éviter un commit de fusion à chaque pull.Comment résoudre les conflits après un git pull ?
Un pull peut provoquer des conflits de fusion lorsque des changements locaux et distants se chevauchent. Ouvrez les fichiers en conflit, résolvez les sections marquées, puis faites
git add dessus et git commit (pour une fusion) ou git rebase --continue (pour un pull avec rebase). Si vous préférez tout annuler, exécutez git merge --abort ou git rebase --abort.Puis-je m'entraîner en ligne ?
Oui. Ouvrez le terminal playground pour exécuter
git pull dans un vrai shell dans votre navigateur, rien à installer. Le cours Git interactif et gratuit de Coddy couvre aussi le travail avec les dépôts distants, étape par étape.