masklinn í dag viðrar vel til loftárása | gee a écrit :
Oui finalement ca arrive, je me retrouve avec un point d'exclamation dans mon arborescence et ankh me demande de choisir ce que je veux faire (garder l'ancien, le nouveau, la fusion), mais parfois je me retrouve avec des "<< mine" et trucs du genre dans le fichier à enlever à la main, j'ai peut être mal compris un truc par contre 
|
C'est la "merged file with conflict" par défaut de Subversion.
Quand SVN détecte un conflit qu'il n'arrive pas à résoudre, il génère 4 fichiers:
- foo.php
- foo.php.r#{x}
- foo.php.r#{y}
- foo.php.mine
(#{x} est un numéro de révision, #{y} aussi avec y < x)
foo.php.mine est ton fichier, celui que tu viens de tenter de commiter
foo.php.r#{y} est le fichier sur lequel est basé ton fichier (la version récupérée lors du dernier update avant d'effectuer tes modifications actuelles)
foo.php.r#{x} est le fichier actuellement dans le repository (la dernière version du fichier, celle qu'un de tes collèges a commité avant que tu fasses ton commit)
et enfin foo.php (fichier marqué comme "en conflit" ) qui va ressembler à ça:
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec libero. Proin ipsum orci, tempus et, fermentum quis, faucibus vitae, nulla. Integer sollicitudin diam a magna.
<<<<<<< .mine
Fusce quis diam.
=======
Phasellus interdum est ut augue.
>>>>>>> .r#{y}
Quisque non nisi ac pede mollis placerat. Ut leo purus, condimentum vel, vestibulum ut, consectetuer eget, leo. |
le principe, c'est que les trucs autour de <<< et >>> sont les parties non conflictuelles du fichier et le texte au milieu est la partie en conflit.
la partie entre <<< .mine et === ce sont tes modifications à toi, et la partie entre === et >>> .r#{y} est la partie créée par ton collègue en conflit avec tes modifications.
À partir de là il y a 3 possibilités:
- Si tu n'as pas d'outil de diff qui pootre, tu prends foo.php et tu résous le conflit à la mano, parfois il suffit de supprimer les tags, parfois non. Et appelles le collègue qui a fait les modifs si t'es pas sûr naturellement
- Si tu as un outil de diff qui pootre suffisament pour gérer le 3-ways Diff (genre Araxis Merge
) tu charges foo.php.r#{y}, foo.php.r#{x} et foo.php.mine et tu diff depuis là pour créer le merge que tu enregistre dans foo.php (ou bien alors tu peux ne differ que sur foo.php.r#{x} et foo.php.mine). Ensuite tu marques foo.php comme "résolu" (il était marqué comme en conflit) et tu commit (normalement subversion supprime lui même les 3 fichiers générés à ce stade, pas besoin de faire le nettoyage toi même)
gee a écrit :
Bah sous eclipse il y a un onglet team synchronize (ou quelque chose du genre désolé ...) et dedans je fais un synchronize qui me permet de voir les modifications sur le serveur, sans forcément les récupérer toutes. Avec tortoise je peux regarder les logs, sous Ankh je ne vois rien de ce genre je me retrouve obligé soit de demander à l'autre dev ce les fichiers sur lesquels il travaille ou bien je demande une mise à jour globale... Pas forcément dramatique bien sûr, mais j'aimais bien la séparation CVS / workspace, ici les 2 sont mélangés.
|
J'vois pas le problème de demander des updates globaux régulièrement, c'est ce que t'es censé faire de toute façon
gee a écrit :
Pour l'irc je pense qu'il sera bloqué vu que déjà la plupart des forums sont bloqués (bizarrement pas HFR...) et certains sites aussi ...
|
Tentes quand même, et tu peux demander à ton admin de te laisser accéder à IRC si c'est bloqué, suffit d'expliquer tes raisons ![[:spamafote] [:spamafote]](https://forum-images.hardware.fr/images/perso/spamafote.gif) ---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
|