Je ne comprends pas la différence entre git pull --rebase
et git rebase
, sans aucune autre option.
Je ne comprends pas s'ils sont sûrs, une bonne pratique ou très dangereux.
Puis-je briser l'historique du commit en faisant un git pull --rebase
en local?
Je ne recommande pas du tout le rebasage, mais uniquement pour les succursales privées. Par privé je veux dire des branches que vous êtes à peu près sûr que vous avez tirées.
Un rebase change le point de départ de la branche en un commit plus récent, fusionnant ainsi tous les commits à ce point. Cela pourrait conduire à fusionner les conflits avec des personnes qui avaient dans leur référentiel l'ancienne base de succursales. Je recommanderais toujours la fusion simple et ne laisserais le rebasage que pour certaines situations (branches de fonctionnalités, par exemple).
Concernant votre question:
git pull --rebase
est un raccourci pour git fetch
puis un simple git rebase
, par opposition à la valeur par défaut git merge
. La différence pratique est qu'appliquer uniquement ce dernier ne fetch aucun nouveau commit de votre télécommande avant de rebaser votre code par dessus, car cela ne prendrait en compte que ce que votre dépôt local connaît déjà.
Il convient également de mentionner que la fusion des conflits apparaîtrait de la même manière qu'un tirage git normal.