2017-01-25 1 views
0

Je fais un refactor majeur sur une branche qui a été démarrée il y a plusieurs mois, puis le travail s'est arrêté. Il a fallu LONGTEMPS pour rebaser sur le maître actuel.Git rebase: Git oublie que j'ai déjà rebasé

Maintenant, quelqu'un a changé quelques fichiers et je veux intégrer ces changements.

J'ai commencé à rebaser, mais il veut que je fusionne à nouveau ces 1000 conflits !!!

Y a-t-il un moyen de dire à git que ma branche est déjà fusionnée avec ce précédent master?

+0

Bienvenue dans StackOverflow! Avez-vous traversé la [tournée]? –

Répondre

0

Cerise choisir le changement frais. Ne pas fusionner le tout à nouveau!

Vous pourriez avoir besoin d'expliquer les détails plus: sur quoi cette branche a-t-elle changé, etc.?

+0

Ces changements étaient sur la branche onewar, ramifiée du maître. Comme : 'M1 - M2 - ... - M100 - M101' ' \ \ '' O1 ... O50 \ '' P1 ... P50 ... P100' –

+0

* Modifier votre message * inclure plus d'informations; ne le dites pas seulement dans les commentaires (ou les commentaires aux réponses!). –

+0

S'il vous plaît ignorer que la dernière ... Je ne sais pas comment faire des diagrammes ici .. Onewar et ses 50 changements ont été ramifiés de Maître M1 alors maître avait 100 changements Je Rebasé Onewar sur M100 et maintenant Onewar a 90 changements, la résolution originale de 50 plus de tous les conflits. Maintenant, quelqu'un a fait quelques changements pour créer M101 Peut-être que le rebasing était une erreur et que j'aurais dû fusionner ... Puis-je dire à git que ma branche est fusionnée avec M100, donc je peux changer M101 sans rejouer tous les O1 .. 90? Oui, je peux choisir tous les changements à partir de maintenant. Cela semble moche ... –

0

Peu importe. Je vais juste

  • caisse M100 dans un dossier séparé

  • faire une branche NOUVEAU

  • Copiez tous mes changements dans ce dossier

  • puis fusionner les nouveaux changements de maître dans

  • travailler sur la nouvelle branche