2009-08-26 13 views
1

Je viens de faire quelque chose sans y penser. J'ai fait une branche du répertoire de travail contenant des modifications locales en utilisant TortoisSVN. Je suppose qu'il a fait une copie et passer d'un coup. Maintenant, la première version de ma nouvelle branche est différente de n'importe quelle version du tronc. La question est, comment puis-je réintégrer cette branche dans le coffre? Si j'utilise le delta entre la première et la dernière version de la branche, ce changeset ne contiendra pas les modifications initiales que j'avais dans mon répertoire de travail.Branche de réintégration faite à partir du répertoire de travail

Si j'avais créé une branche à partir de la dernière version de la ligne de réseau, puis que j'avais validé mes modifications locales, cela n'aurait pas posé de problème, car la première version de la branche aurait été identique à la version correspondante tronc.

Répondre

0

Je suppose que je peux trouver la version du tronc, juste avant de faire la branche et de l'utiliser comme point de départ du changeset. Cela semble étrange. Y a-t-il une solution plus élégante?

Editer: oui il y a une solution plus élégante. J'avais tort. Une branche, même une branche créée à partir du répertoire de travail conserve tout l'historique du tronc avant la scission. J'utilise TortoisSVN, donc tout ce que je devais faire était de décocher "Stop on copy/rename" dans la fenêtre du journal pour voir les versions antérieures au split. Ensuite, j'ai simplement utilisé la version immédiatement avant la création de la branche comme le début de mon ensemble de modifications. Il n'y avait pas de problème après tout.

+0

plus élégante serait de ne pas valider les modifications et création d'une branche à la même étape. Depuis que vous avez fait cela, je suppose que vous ne pouvez pas faire grand-chose pour améliorer ce processus. – RaYell

0

Cela devrait vous aider. J'appelle votre nouvelle succursale invalid pour raccourcir un peu les choses.

  1. Faire une diff entre invalid branche et du tronc (utiliser la révision juste avant la création d'une nouvelle branche invalide - Appelons celui-invalid) - qui vous donnera les modifications de votre copie de travail que vous Commited lors de la création branche invalide et êtes ne fait pas partie d'un trunk.
  2. Appliquez ces modifications au tronc.
  3. Réintégrer votre branche invalid avec trunk (changements initiaux sont déjà là - étape 2)
+0

Dans ce cas, pourquoi ai-je besoin de deux fusions? Fusionner dans le delta entre la version du tronc juste avant la création de la branche et le HEAD de la branche invalide produirait le même résultat. – Dima

Questions connexes