2012-10-10 3 views
1

J'ai fusionné un certain nombre de révisions (disons 50 à 100) de trunk à branche. J'ai commis des changements de copie de travail à la branche (rev 101).Est-il possible de rétablir partiellement une fusion dans SVN?

Plus tard, j'ai découvert que les révisions 80-100 n'auraient pas dû être fusionnées. Habituellement, la commande "Revenir des modifications de ces révisions" fonctionne, mais maintenant, lorsque je sélectionne les révisions (avec les options "Inclure les révisions fusionnées" activées), la boîte de dialogue indique que la fusion est terminée, mais rien n'est changé.

Ce scénario est-il pris en charge?

Répondre

2
  • Vous ne pouvez pas annuler moins d'un commettras
  • Mergeset est une branche dans commettras

Du ci-dessus suit que pour la solution du problème que vous doit à commettre au moins un supplémentaire corrigeant révision

Manière facile (2 révisions) - Rollback 101, fusionner ensemble droit du coffre

Hard way courte (1 révision) - si vous avez fusionné 50: 100, mais doivent avoir 50:79, vous pouvez inverser fusionner indésirables révisions du tronc de branche tête

+0

Merci. Je comprends maintenant. Le problème est dans le client TSVN qui permet la sélection des révisions, puis ne fait rien. – clearpath

-1

Le scénario est pris en charge pour votre copie de travail et non pour la branche distante. TortoiseSVN est fait pour "ne jamais perdre de données": Roll back (Undo) revisions in the repository - Appendix B from TortoiseSVN Documentation

Si cette réversion est vraiment nécessaire dans la branche, essayez de supprimer la branche à distance et de la créer à nouveau.

+0

Cette réponse manque le point. Je n'ai pas besoin de 'perdre des données', je veux juste annuler les changements de certaines révisions. – clearpath

+0

Vous n'avez pas compris ma réponse. Vous pouvez appliquer une fusion inversée (comme expliqué dans l'autre réponse) ** ou ** supprimer la branche avec les révisions non désirées, puis créer une autre branche. SVN a été projeté pour maintenir toutes les données stockées, pas ** pour faire perdre aux utilisateurs des données **. Lisez à nouveau la réponse avant de simplement décliner et allèguez que la réponse manque le point. –

+0

1) "Le scénario est pris en charge pour votre copie de travail, et non pour la branche distante." - J'essayais de revenir sur certaines révisions de ma copie de travail. Relisez ma question, s'il vous plaît. 2) 'TortoiseSVN est fait pour "ne jamais perdre de données" - Je ne veux pas qu'il perde des données. 3) "Réinitialiser les révisions dans le dépôt - Annexe B de la documentation de TortoiseSVN" - ce lien décrit exactement ce que j'ai fait, mais cela n'a pas fonctionné. Je reconstitue le nombre de votes de votre réponse mais je pense toujours que vous n'avez pas lu la question complètement. – clearpath