Mémo Git · Synchroniser
Intégrer les nouveautés du remote
git pull · git pull --rebase
git pull récupère les commits du remote et les intègre à ta branche. S'il n'y a que des nouveautés distantes, la branche avance simplement. Si tu as aussi des commits locaux, Git fait un merge, ou un rebase avec git pull --rebase.
Ce que ça fait
Récupère les commits distants et les intègre à la branche courante, par merge ou par rebase.
Un cas d'usage
Un collègue a poussé sur la même branche que toi : tu te mets à jour avant de continuer.
En ligne de commande
git pull- Fetch puis intégration, selon ta configuration.
git pull --rebase- Rejoue tes commits locaux par-dessus ceux du remote : historique linéaire.
git pull --ff-only- N'accepte que l'avance rapide, et s'arrête si les branches ont divergé.
git config --global pull.rebase true- Fait de
--rebasele comportement par défaut.
Dans Merathon
- Bouton « Pull » : avance rapide si possible, sinon merge.
- La petite flèche à côté (« Options Pull ») propose « Pull (rebase) », qui rejoue tes commits par-dessus ceux du remote et garde un historique linéaire.
- Clic droit sur une autre branche locale → « Pull » la met à jour sans y basculer.
Questions fréquentes
Que veut dire « You have divergent branches » ?
Le remote et toi avez chacun des commits que l'autre n'a pas. Choisis une stratégie : git pull --rebase ou git pull --no-rebase (merge).
Comment annuler un git pull ?
Juste après, git reset --hard ORIG_HEAD remet la branche où elle était. Attention, les modifications non commitées sont perdues.