Organisation CVS - TecostNetwork/Network GitHub Wiki
Créer une branche
- Ouvrir un workspace sur le HEAD.
- S'assurer que le code est bien synchronisé et qu'il n'y a rien à commiter.
- Sélectionner tous les projets > click droit > Team > Branch.
- Nommer la branche comme tel : sipres/dev/DEV_XXXXX_config_partners
Merge branche -> HEAD
Lorsqu'en fin de développement, on veut reporter le code d'une branche DEV vers le HEAD :
- Ouvrir un workspace sur le HEAD (destination).
- S'assurer que le code est bien synchronisé et qu'il n'y a rien à commiter.
- Sélectionner tous les projets > click droit > Team > Merge.
Dans la popup de merge :
- Pour le "end tag", choisir la branche de DEV.
- Pour le "start tag", devrait être automatique et correspondre au tag au moment de la création de la branche. En principe c'est "Root_nomDeLaBranche".
- S'assurer que le radio "Preview the merge in the sychronize view" est coché.
- Cliquer sur Finish.
À partir de ce moment, la vue synchronize s'ouvre et il faut :
- Merger les changements de la branche DEV vers le workspace local, via les opérations merge, overwrite, mark as merged...
Une fois que le code est rapatrié sur le workspace et que les conflits ont été résolu :
- Synchroniser le workspace avec le HEAD (voir image ci-dessous).
- Commiter vers le HEAD.
Merge HEAD -> branche
Lorsqu'en court de développement, on veut mettre à jour une branche DEV pour profiter de nouveautés ou corrections du HEAD.
- Ouvrir un workspace sur la branche DEV (destination).
- S'assurer que le code est bien synchronisé et qu'il n'y a rien à commiter.
- Sélectionner tous les projets > click droit > Team > Merge.
Dans la popup de merge :
- Pour le "end tag", choisir la branche HEAD.
- Pour le "start tag", indiquer le tag au moment de la création de la branche. En principe c'est "Root_nomDeLaBranche". Ce tag ne peut pas être trouvé via Browse, il faut malheureusement l'indiquer à la main. Par contre Eclipse indique si le tag est inconnu, donc pas d'erreur possible.
- S'assurer que le radio "Preview the merge in the sychronize view" est coché.
- Cliquer sur Finish.
À partir de ce moment, la vue synchronize s'ouvre et il faut :
- Merger les changements du HEAD vers le workspace local, via les opérations merge, overwrite, mark as merged...
Une fois que le code est rapatrié sur le workspace et que les conflits ont été résolu :
- Synchroniser le workspace avec la branche (voir image ci-dessous).
- Commiter vers la branche.
Comment merger ?
Lors d'un merge, il faut voir votre code local comme le code qui fera foi et sera envoyé sur la destination.
- Fichier entrant (bleu) : merge
- Fichier en conflit (rouge) : l'ouvrir dans le comparateur
- S'il n'y a que des bouts de code en gris (code plus récent que la branche) et des bouts de code en bleu (code entrant) : on peut faire merge
- S'il y a des bouts de code en rouge (code conflictuel) il faut voir manuellement ce qu'il convient de récupérer
- Si on doit récupérer des bouts de code à la main, une fois terminé : faire mark as merged (le fichier restera en l'état avec les changements faits à la main)
- Si on est sûr que la version entrante doit remplacer l'intégralité de l'existant : on peut faire overwrite (faut vraiment être sûr)
- Si on pense que la version entrante est complètement obsolète : on peut faire mark as merged (le fichier restera en l'état)