72 votes

SVN - la Réintégration de Fusion d'erreur: "doit être ancestralement liés"

En utilisant TortoiseSVN - lorsque j'utilise la Fusion de Test, j'obtiens l'erreur "http://mysvnserver/svn/main/branches/ProjectA doit être ancestralement liées à http://mysvnserver/svn/main/trunk/ProjectB"

Que puis-je faire pour résoudre ce problème?

78voto

davebytes Points 386

Je suis juste allé à travers un problème similaire, a voulu ajouter du problème et de la solution que j'ai frappé. La direction générale a été faite à partir d'un sous-dossier du tronc et pas la totalité de l'arbre. Ainsi, quand j'ai essayé de le réintégrer, j'ai été le décalage des hiérarchies. Simplement la restructuration de l'intégrer à être à la bonne sous-dossier de mon tronc DEO a permis le processus à suivre.

L'ajout dans l'espoir que cela pourrait aider quelqu'un qui frappe ce Q/A. :)

20voto

Leonidas Points 2059

Laissez-moi deviner: les projets ne sont pas liés? Regardez l'histoire, si l'un d'eux ne l'a jamais été ramifiés ou non.

Solution immédiate: fusionner par la main ou essayer en ligne de commande avec "svn merge --ignore-ascendance"

9voto

jevon Points 1162

Comme davebytes mentionné, ce problème peut se produire lorsque vous branche trunk\X en branches\Y, mais ensuite déplacer X dans un nouveau dossier Z, c'est à dire trunk\X\Z.

Si vous essayez de fusionner un changement en branches\Y en trunk\X, vous obtiendrez beaucoup de conflits; si vous essayez de fusionner branches\Y en trunk\X\Z, vous obtiendrez le "ancestralement" liés à l'erreur.

Mais, le SVN manuel décrit le problème sous-jacent: svn merge devrait vraiment être appelé svn diff-and-apply. Ce que vous devriez plutôt essayer de décrire dans ce scénario, c'est que vous êtes en essayant de résumer les changements qui se sont produits à partir de r100 pour r200 d' branches\Y, et d'appliquer ces modifications à l' trunk\X\Z\.

Dans TortoiseSVN, c'est la fusion de deux arbres différents scénario de votre copie de travail locale trunk\X\Z, avec r100 d' branches\Y définir comme "de", et r200 d' branches\Y défini comme "pour".

7voto

Memet Olsen Points 1642

Nous avons rencontré ce problème pour les raisons suivantes:

Créé un dossier avec l'explorateur de dépôt de TortoiseSVN et l'a utilisé comme une branche. Ensuite, nous avons essayé de fusionner manuellement le dossier créé dans le dossier de travail.

Solution: Ne pas créer une branche manuellement en premier lieu, au lieu d'utiliser la commande TortoiseSVN -> Branche/étiquette... possibilité de créer une branche.

J'espère que cela sera utile.

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