54 votes

SVN - impossible de fusionner une branche avec le tronc - nombreux conflits d'arbres

J'ai ce que je pensais être un scénario simple - utilisant TortoiseSVN :

1) J'ai créé une branche (B2) d'une application (pour travailler sur l'implémentation de sprites d'images et de JAWR).

2) Les tests et le développement se sont poursuivis normalement sur le tronc.

3) J'ai refait la base de la branche plusieurs fois au cours des derniers jours par :

3.1) Fusionné le tronc (par plage de révisions) à ma copie de travail branch-b2, en résolvant les conflits durant la fusion.

3.2) (après avoir testé la branche-b2), je commite la branche-b2 re-basée.

Tout cela a fonctionné comme prévu. Mais la fusion de la branche vers le tronc me pose problème :

4) Après toutes les mises à jour effectuées dans la branche-b2, je m'assure de faire une mise à jour SVN sur le tronc et la branche-b2.

5) Ensuite, j'essaie de fusionner (gamme de révisions) de la branche-b2 dans le tronc. Cependant, pour tout nouveau fichier qui a été ajouté au tronc, et ensuite ajouté à la branche-b2 lorsque je l'ai rebasé, j'obtiens un conflit d'arbre. Je ne suis pas sûr de la manière appropriée de résoudre ces conflits.

Le conseil le plus courant que j'ai vu est soit de supprimer les fichiers en conflit avec l'arbre du tronc, puis de fusionner la branche avec le tronc ; soit de supprimer l'ensemble du tronc, de copier les fichiers de la branche avec le tronc, puis de les livrer en tant que nouvelle version dans le tronc. Aucune de ces options ne semble être une bonne idée - la première est pénible, et les deux semblent perdre l'historique des révisions des fichiers.

Qu'est-ce que j'ai fait de mal, et comment je peux le réparer ?

0voto

user8224326 Points 1

Je pense avoir résolu ce problème. 1. Faites un clic droit sur la "branche" que vous avez fusionnée. 2. Cliquez sur Tortoise SVN >> Fusionner 3. Fusionner une gamme de révisions" et "Suivant". 4. Vérifiez "Reverse Merge" ! !! URL pour Fusionner à partir de "branche", plage spécifique "révision récemment fusionnée", et Suivant. 5. Suivant 6. Commite SVN

Après cela, je peux fusionner la branche avec le tronc.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X