git : Pourquoi Git me demande de choisir entre merge et rebase

Créé par Jean-Emmanuel Bissey le 26/12/2025 Publié

📝 Contexte

En travaillant sur mon projet MyClub depuis Visual Studio Code, j’ai voulu synchroniser mes modifications avec GitHub. Mais lorsque j’ai cliqué sur “Synchroniser les changements”, Git m’a renvoyé une erreur :

You have divergent branches and need to specify how to reconcile them.

Autrement dit, ma branche locale et la branche distante ont chacune des commits que l’autre n’a pas.

❓ Le problème

Git refuse par défaut de faire un pull si les branches ont divergé et qu’on n’a pas défini de stratégie claire pour les fusionner ou les réappliquer. Il demande donc de choisir entre :

  • merge : fusionner les deux historiques,
  • rebase : repositionner mes commits par-dessus les commits distants,
  • fast-forward only : n’accepter que les mises à jour simples.

🛠 La solution simple que j’ai utilisée

Dans mon cas, l’erreur a été levée grâce à la commande suivante dans le terminal :

git pull --no-rebase

Cela a forcé Git à faire un merge entre ma branche locale et origin/main, ce qui m’a permis ensuite de pousser mes changements sans bloquer. 👍