/ / Pourquoi est-ce que rebase avec seulement la reformulation des messages de commit pose des problèmes? - git

Pourquoi rebase se contente-t-il de reformuler les messages de validation qui rencontrent des problèmes? - git

J'ai une branche avec ~ 50 commits poussés à l'origine. Puis un jour, j’aimerais éditer le texte des messages de validation (car nous utilisons une référence à la tâche Jira dans le message de validation, et j’ai besoin de la corriger). Le seul moyen que je connaisse est donc d’exécuter une tâche interactive. rebase:

git rebase -i origin/my-precious-branch~30 my-precious-branch

puis je sélectionne quelques commits et change pick à r (pour reword). Et ce qui se passe ensuite, c'est ce qui me laisse perplexe. Pour la plupart des commits - cela ouvre simplement l'éditeur où je peux modifier manuellement le texte de validation (très bien). Mais alors ça s'arrête pour l'un d'entre eux:

error: could not apply 616b308fe9e... OLD-MESSAGE: 1

When you have resolved this problem, run "git rebase --continue".
If you prefer to skip this patch, run "git rebase --skip" instead.
To check out the original branch and stop rebasing, run "git rebase --abort".
Could not apply 616b308fe9e3d4cd8845d090720f1cdad97add73... OLD-MESSAGE: 1

Que se passe-t-il ici? Et pourquoi?

Réponses:

1 pour la réponse № 1

D'après vos commentaires, il semble que vous ayezune ou plusieurs fusions que votre rebase frappe. Ré-baser un commit de fusion devient compliqué, car vous devez soit refaire la fusion, soit laisser Git essayer de recréer la fusion. Dans tous les cas, le conflit que vous rencontrez est probablement dû au fait qu'il s'agit d'un commit de fusion.

Voir ici pour savoir comment gérer cette situation:

Rebaser un commit de fusion Git

Si vous êtes prêt à de tels conflits, vous pouvez toujours reformuler les commentaires de validation.