Ceci est une continuation de cette question: TortoiseSVN merging branch to trunk Si la question originale doit juste être éditée, s'il vous plaît faites le moi savoir et je ferai cela.TortoiseSVN fusionner une branche au tronc
Voici la situation actuelle.
Avoir un projet avec une copie de travail sur mon PC qui était tous à jour. J'ai créé une nouvelle branche sur cette base et j'ai transféré ma copie de travail vers cette nouvelle branche.
Depuis cela, un autre développeur a vérifié certaines modifications apportées à la ligne de réseau, et j'ai apporté quelques modifications à la branche. Je ne pense pas que nous ayons changé les mêmes fichiers donc nous devrions être bons en ce qui concerne les conflits.
Je souhaite fusionner mes modifications dans le coffre.
Je sélectionne fusionner, puis sélectionne une plage de révision. URL à fusionner à partir de laquelle j'ai sélectionné la ligne de réseau. La plage est vide. Lorsque je fais un test de fusion, il semble que j'ajoute tous les fichiers ajoutés au projet - cela ajoute certainement beaucoup plus de fichiers que de changements depuis que je me suis séparé du tronc. Il fait des centaines de fichiers alors qu'il ne devrait y avoir que 10 ou 20 fichiers modifiés.
Dois-je plutôt sélectionner la plage de révisions que l'autre développeur a archivé sur le tronc? Ou devrais-je plutôt choisir de fusionner deux arbres différents? Si j'essaie cela et que j'essaie de faire un test de fusion du tronc à ma branche, j'obtiens un conflit. Si j'essaie de faire de ma branche au tronc, il semble que cela fonctionne. Bien que je voudrais alors ramener tout à tronc à ce moment-là depuis que j'ai fait quelques corrections dans ma branche que je veux inclure dans le coffre avant que je ne procède à plus de changements dans la branche.
modifier: un peu plus de détails pour aider à clarifier la configuration actuelle
Ma copie de travail faisait auparavant partie du tronc. J'ai utilisé la tortue pour créer une nouvelle branche et j'ai changé ma copie de travail pour cette branche. Ainsi, le projet ressemble à: /projet/branches/mybranch
tronc ressemble /projet/trunk
Un autre dev vérifié quelques changements dans le tronc, et je l'ai vérifié quelques changements dans mybranch. Je veux fusionner tous ces changements dans le coffre avant que je ne fasse plus de travail sur mybranch. Quand je regarde le journal pour mybranch, il y a seulement 3 checkins; 153, 154 et 159 (et 153 est juste la création de la branche) quand je regarde le journal pour le tronc, il y en a 4 depuis qu'il a été séparé du tronc: 155-158
Il devrait y avoir pas de conflits comme nous l'avons fait ne fonctionne pas sur les mêmes fichiers.
Si j'essaie de fusionner FROM mybranch sans spécifier de plage de révision, il semble que tous les fichiers du projet soient ajoutés. c'est-à-dire que je fais un test de fusion et qu'il montre des centaines de fichiers ajoutés.
Si je fais un test de fusion à partir de la ligne de réseau et spécifiez la révision 155-158 qui ressemble à fusionner toutes les modifications de tronc dans ma copie de travail. Je suppose que si je fais cela, je peux alors tout vérifier dans mybranch à quel point j'ai juste besoin de comprendre comment tout fusionner dans le coffre.
Tout ce qui précède a été fait en utilisant 'fusionner une gamme de révisions'.
Si j'essaye de 'fusionner deux arbres différents' et que j'essaie de fusionner du tronc à la mybranche (avec la révision de la tête), j'obtiens un conflit.
Si j'essaie de passer de mybranch à trunk, il semble que cela fonctionne. D'après ce que j'ai vu, il me semble que faire l'arbre fusionner de mybranch au tronc est ce que je veux faire. Je ne suis pas certain puisque jusqu'ici on m'a dit de faire autrement.
Je veux que tout soit poussé dans le coffre. Je prévois de faire de gros changements au code de mybranch, ce qui interrompra le projet jusqu'à ce qu'il soit terminé, c'est pourquoi je veux que le trunk soit à jour avant de commencer, au cas où je devrais corriger un code existant.
Edit2: quand je fais une gamme de fusion des révisions et sélectionnez mybranch comme l'URL pour fusionner à partir, voici ce qui apparaît dans la fenêtre de tortue comme la commande: commande: Fusion des révisions 1-HEAD/branches/mybranch dans C: \ Users \ xxxx \ Documents \ Visual Studio 2010 \ Projects \ MyProject, concernant l'ascendance, Test uniquement
Ma copie de travail est déjà sur mybranch. Donc, pour moi, cela ressemble à fusionner mybranch dans ma copie de travail, qui fait déjà partie de mybranch, donc en gros, il fusionne mybranch en lui-même? Fusionner à partir du tronc est la seule chose qui aurait du sens pour moi. Et si fusionnez FROM trunk et sélectionnez la plage de révision dans laquelle l'autre dev est archivé, la sortie semble correcte. À ce moment-là, je devrais alors simplement tout fusionner dans le coffre.
commande: Fusion des révisions de 154-158/trunk dans C: \ Users \ XXX \ Documents \ Visual Studio 2010 \ Projects \ MyProject, concernant l'ascendance, Test Seuls
Les numéros de révision qui comptent sont les suivants:
tronc: 155-158 - ce sont les révisions les autres dev vérifié dans le tronc
mybranch: 153, 154 et 159. 153 est la création de la branche. 154 et 159 sont des changements de fichiers réels qui doivent être fusionnés dans le tronc. L'autre commande que j'ai juste essayée qui semble aussi faire ce que je veux est si je fusionne de mybranch au tronc et spécifie la révision 154 ou 159 sous FROM et la révision 152 sous TO (tronc). Je n'ai jamais essayé de travailler avec autre chose que la révision actuelle, donc je ne sais pas exactement ce qui se passe si je fusionne avec une révision de quelques chiffres.
Commande: Fusion de/branches/mybranch, révision 154/tronc, révision 152 en C: \ Users \ xxxx \ Documents \ Visual Studio 2010 \ Projects \ MyProject, en respectant
apprécier toute aide à clarifier la bonne façon de le faire.
Merci
Les chemins sont-ils corrects et à la même profondeur dans la hiérarchie de projet/solution? Autrement dit, si vous avez 'svn: // example.com/foo/trunk/project /' et 'svn: // example.com/foo/mybranch /' pour vous assurer de sélectionner 'svn: //example.com/foo/trunk/project/'et NOT' svn: // example.com/foo/trunk/'pour l'URL de fusion –