5 votes

SVN : Synchroniser la branche avec le tronc dans Eclipse ?

J'ai une branche SVN et un tronc. Le tronc change régulièrement et la branche ne change pas.

De temps en temps (disons une fois par semaine), je veux mettre à jour la copie de travail locale de la branche avec les dernières modifications du tronc.

Idéalement, je voudrais faire cela de la même manière que je le fais avec la dernière version de la branche : avec Eclipse : Team->Synchroniser, afin de pouvoir revoir toutes les modifications avant la mise à jour.

Cela est-il également possible avec un différents (par exemple : trunk) ? Si ce n'est pas le cas, comment les gens examinent-ils les modifications avant de les mettre à jour ?

J'ai regardé Team->Fusionner, mais cela semble mettre à jour les changements directement dans ma copie de travail, sans la possibilité de revoir les changements d'abord (la fonction de prévisualisation est confuse, je pense, et ne fournit pas la belle vue côte à côte des changements/conflits que Synchroniser a).

6voto

Mark Phippard Points 6498

La bonne façon de procéder est la fusion. Subclipse inclut un client de fusion qui rend cette opération facile. Vous avez raison de dire qu'il ne vous donne pas un véritable aperçu, mais la façon dont il fonctionne est meilleure du point de vue de Subversion. L'interface utilisateur de la vue Résultats de la fusion est fondamentalement la même que celle de la vue Synchroniser. Elle vous permet d'examiner facilement chaque changement que la fusion a fait dans votre copie de travail et l'éditeur de comparaison Eclipse qu'elle ouvre permet de supprimer très facilement toutes les parties du changement que vous ne voulez pas dans votre code avant de le livrer.

Le problème en essayant de faire cela à partir de la vue Synchroniser est que vous faites alors la fusion vous-même en utilisant des éditeurs de code et Subversion n'a aucune conscience de ce qui est fusionné. Si vous laissez Subversion faire d'abord la fusion, alors il peut mettre à jour toutes ses métadonnées correctement et il est parfaitement bien pour vous de corriger ensuite le code pour qu'il soit comme vous le voulez avant de livrer les résultats de la fusion.

0voto

Piotrek De Points 3566

Je vérifierais à la fois la branche et le tronc en tant que projets eclipse séparés dans l'espace de travail. Puis utiliser un outil de fusion, par exemple se mélanger pour fusionner les changements entre eux. Après la fusion, vous pouvez rafraîchir la branche dans Eclipse et la synchroniser avec le dépôt svn - maintenant vous pouvez revoir tous les changements. (c'est comme ça que je le fais, puisque je ne crois pas au plugin svn eclipse ;))

0voto

kewlbfy Points 41

Je reconnais que ce n'est pas vraiment intuitif de par sa conception, mais Mark a raison, vous "synchronisez" vos modifications en les remettant dans le tronc :

  • assurez-vous d'abord que votre branche locale est complètement synchronisée avec la branche de votre dépôt (pas de changement).
  • Équipe -> Fusionner... votre copie locale de la branche avec le tronc du référentiel
  • vous avez maintenant une version locale de cette fusion
  • vous pouvez éditer localement cette version, vérifier que les tests fonctionnent et qu'il n'y a pas d'erreurs de compilation
  • enfin, vous synchronisez votre version locale de la branche fusionnée avec la branche du référentiel et vous validez tous les changements qui ont été effectués

de plus, de la même façon que vous fusionnerez votre branche dans le tronc du dépôt

  • s'assurer que toutes les modifications de votre branche sont validées dans la branche du dépôt.
  • commutateur vers le tronc Équipe -> Changez...
  • fusionner votre tronc avec votre branche Équipe -> Fusionner... (Onglet 'Réintégrer')
  • vous avez maintenant une version locale de la fusion, vous pouvez éditer les changements et les réviser, assurez-vous que vous avez une version de travail maintenant
  • synchroniser votre tronc local (version fusionnée) avec le tronc du référentiel
  • Livrer tous les changements que vous voulez voir apparaître dans le tronc.

je recommande de livrer toutes les modifications que vous avez effectuées localement dans votre fusion, puisque vous les avez testées localement. si vous ne livrez que quelques modifications, assurez-vous que la version du dépôt fonctionne toujours avec les modifications manquantes.

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