Question

Je suis en train de réintégrer une branche de développement dans le tronc dans mon dépôt Subversion 1.5. J'ai fusionné tous les changements du tronc à la branche de développement avant cette opération. Maintenant, lorsque je tente de réintégrer les changements de la branche je reçois le message d'erreur suivant:

Command: Reintegrate merge https://dev/svn/branches/devel into C:\trunk  
Error: Reintegrate can only be used if revisions 280 through 325 were previously   
Error: merged from https://dev/svn/trunk to the reintegrate   
Error: source, but this is not the case:  
Error:   branches/devel/images/test  
Error:     Missing ranges: /trunk/images/test:280-324  
...

Le message va ensuite se plaindre de certains dossiers dans mon projet. Mais lorsque je tente de fusionner les changements du tronc à la branche de développement nouveau, TortoiseSVN me dit qu'il n'y a rien à fusionner (comme je l'ai déjà fusionné toutes les modifications avant):

Command: Merging revisions 1-HEAD of https://dev/svn/trunk into C:\devel, respecting ancestry  
Completed: C:\devel  

Je suis en train de suivre les instructions d'ici: http://svnbook.red-bean.com/en/1.5/svn.branchmerge.basicmerging.html , mais il n'y a rien de résoudre un tel problème.

Toutes les idées? Peut-être que je devrais supprimer le tronc, puis faire une copie de ma succursale? Mais je ne suis pas vraiment sûr s'il est sûr.

Voir aussi

  

svn fusionner avec --reintegrate se plaint sur les plages manquantes, mais mergeinfo semble correct

Était-ce utile?

La solution

Vous devez fusionner les révisions R280 à R324 du tronc dans votre branche d'abord.

Il vous semble déjà fusionné R325 dans votre branche, mais --reintegrate a besoin d'obtenir tous les révisions à votre dernière révision fusionnée. Il doit y avoir aucun écart. Voici donc un peu Diag:

           +----------------------> /branches/devel
          /                    /   \<--merge not working!
 --------/-------+--+---+-----+---------> trunk
         |       \  |  /      |
        280       \ V /      325
                    V
                  missing sync merges from trunk to branch

Je pense que c'est la structure de votre branche, vous devez synchroniser tous les changements de tronc à votre succursale. Vous ne R325 fusionné, alors que la fusion R280-R324 et après avoir fait cela, vous devez être bien utiliser --reintegrate

Autres conseils

Nous avons lutté avec cette question depuis quelques semaines et nous avons finalement réussi à résoudre.

Dans notre cas, nous avons travaillé sur une branche qui a été fusionné avec toutes les révisions du tronc sur une base quotidienne. Lorsque nous avons essayé de le réintégrer (fusion avec le tronc) nous avons eu cette erreur. Lorsque nous avons essayé de fusionner les gammes manquantes à notre branche, nous avons un message qu'il n'y a rien à fusionner. Il est arrivé dans plusieurs branches non liées et avec différents fichiers et dossiers.

La solution était d'ajouter les plages manquantes au svn:. Mergeinfo du fichier ou un dossier dans notre branche

Pour chaque "plages manquantes: chemin: revision_range" ligne dans le message que vous avez:

  • Modifier la svn: mergeinfo dans le fichier / dossier mentionné dans dans la branche fusionnée
  • Ajoutez le suivant: la chaîne à la fin de la valeur de propriété (par exemple / trunk / images / test: 280-324)
  • Enregistrer la propriété SVN

valider toutes les modifications et à nouveau réintégrer

J'ai eu cette question, et il a finalement été causé par les propriétés SVN erronées contre un dossier dans ma branche.

La solution était facile - je fusionné à partir du tronc à ma branche en utilisant le numéro de révision spécifique qui avait été rapporté comme manquant par exemple

.

 ici

Et puis spécifiant seulement enregistrer la fusion par exemple.

 ici

Cette action a correctement ma branche en ligne avec le tronc, et ma réintégration de branche subséquente dans le tronc a travaillé avec succès, sans les plages manquantes message d'erreur.

Cette technique évite toute modification manuelle de tout svn:. Propriétés mergeinfo contre tous les fichiers / dossiers

Je me suis arrêté à obtenir ces problèmes quand je commencé à utiliser l'option -r pour svn commande de fusion et ne pas tenter de faire le --reintegrate jusqu'à ce que j'avais fusionné sans elle. J'utilise svn 1.6.1.

Voici ce que je fais:
1. lors de la fusion de branche en tronc ou tronc vers la branche, j'utilise l'option -r comme ceci:

 cd branchWorkArea/topDir
 svn merge -r<branchPoint>:HEAD [otheroptions] svn://svn/project/trunk/topDir
  1. quand j'ai résolu des conflits et de tester mon code, je commets la fusion à la branche, puis fusionner la branche du tronc en utilisant les mêmes options de base (en particulier -rBranchPoint: HEAD)

  2. lorsque le tronc a été testé et engagé, puis-je utiliser l'option --reintegrate à la fermeture de la branche. Assurez-vous d'utiliser le -rbranchPoint. Option HEAD aussi sur

Pour d'autres options, j'utilise toujours

  

- infini de profondeur (par défaut   à l'infini dans 1.6.2 mais pas avant)
  -x -b -x -w style --ignore-eol

Peut-être, j'ai eu de la chance, mais les choses semblent sûr de travailler mieux.

Pour trouver le point de branchement pour une branche, vous faites un journal svn --stop-on copie au regard puis à dernier revsion -. Ce sera la copie svn qui a créé la branche

Pour ce faire sur linux, je fais quelque chose comme ceci:

  

svn log --stop-on-copie   svn: // svn / projet / trunk / TOPDIR |
  grep '^ r' | tail -1 |   sed -e « s / ^ r // 1'-e 's /. * // g'

devrait imprimer le numéro de révision du point de branchement.

Bonne chance

Ce pas une réponse, mais une question de clarification.

Mon message d'erreur est:

Reintegrate can only be used if revisions 2669 through 3403 were previously merged from
https://../schemas
to the integrate source, but this is not the case:
trunk/schemas:
Missing ranges:
../schemas:2673,2682,2720,2736,2878,2960,3003,3057

J'ai fusionné les révisions en utilisant la solution fournie par Trevellick @ Greg, obtenir encore le message d'erreur.

Quand j'ouvre le svn: mergeinfo suivant la réponse par @pako sur le dossier schémas, le contenu ressemble

/branches/repos_develop_os/trunk_branch-os/schemas:3329
/trunk/schemas:2669-2673,2682,2720,2736,2878,2960,3003,3057

Je ne sais pas comment dois-je modifier ce contenu. Il semble que les gammes manquantes sont tous là.

Je viens d'avoir ce problème et ce qui a fonctionné pour moi était tout d'abord, la Direction Synchronisez avec le tronc, de sorte que la Direction peut avoir les dernières mises à jour à partir du tronc. Après cela, j'ai essayé Réintégrer la Direction du tronc et a bien fonctionné.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top