Sur le serveur dwarves
de l'iut (dwarves.arda ou dwarves.iut-fbleau.fr), se trouvent :
L'authentification est réalisée via l'annuaire de l'iut. A la première connexion, vous aurez un compte sur l'interface. Je vous créerai alors un dépôt accessible par vous. Vous aurez à l'utiliser notamment pour ce tp.
Vous allez initialiser votre projet avec un repertoire init contenant le fichier suivant :
<?php class point { protected $x; protected $y; function __construct($a,$b) { $this->x = $a; $this->y = $b; } function __toString() { return "point : (".$this->x.",".$this->y.")"; } } ?>
svn import init https://dwarves.iut-fbleau.fr/svn/votre_depot/trunk -m "initialisation"
user1
et user2
.
Les deux utilisateurs ont leur copie de travail.
L'utilsateur 1 décide de modifier un peu le fichier ClassPoint.php
Faites un commit pour l'utilisateur 1.
<?php class point { protected $x; protected $y; function __construct($a,$b) { $this->x = $a; $this->y = $b; } function __toString() { return "point : (".$this->x.",".$this->y.")"; } function add(point $p) { $this->x += $p->x; $this->y += $p->y; } } ?>
Pendant ce temps, l'utilisateur 2 modifie également le fichier :
Faites un commit pour l'utilisateur 2. Que se passe-t'il ?
<?php class point { protected $x; protected $y; function __construct($a,$b) { $this->x = $a; $this->y = $b; } function __toString() { return "point : (".$this->x.",".$this->y.")"; } function sub(point $p) { $this->x -= $p->x; $this->y *= $p->y; } } ?>
svn update
Réglez le conflit à la main, et marquez le conflit comme résolu.
svn resolved ClassPoint.php svn commit -m "ajout soustraction a la classe point"
L'utilisateur 1 décide de travailler sur une version personnelle du projet. Créez une branche (svn copy), et switcher sur cette branche (svn switch).
Ajoutez le dans le depot et committez.
<?php require ('./ClassPoint.php'); Class rectangle { protected $p1; protected $p2; function __construct ($a,$b) { $this->p1 = $a; $this->p2 = $b } function __toString() { return "points : ".$p1." et ".$p2; } } ?>