# SVN

# SVN Eclipse

## Liste des repositories

Il est possible dans eclipse de créer un ensemble de liens vers des repot.

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573377309527.png)

## Partages d'un projet

Il s'agit du checkout du projet

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573378433095.png)

Selection du repository

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573378479960.png)

Une bonne pratique est de pousser le projet vers un repertoire trunk

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573378543380.png)

Puis on rajoute un commentaire

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573378577212.png)

Puis il faut rajouter le login et le password

L'etat du projet dans Eclipse est ainsi:

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573378818776.png)

On noteras le ? signalant que le fichier n'est pas dans SVN.

## Premier Commit

Il est possible de faire un commit ainsi:

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573379019361.png)

Eclipse propose la liste des fichiers a mettre dans le repo

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573379062979.png)

Le hic des meta donnée eclipse n'ont rien a faire ici

Dans la perspective navigator, on sort les fichiers qui n'ont rien a faire de SVN:

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573379243667.png)

Ainsi lors du commit, on a maintenant

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573379323316.png)

Apres le commit, on voit que le fichier est dans premiere revision par admin

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573379372128.png)

## Premiere modification

Lors de la modification du fichier Main.java, on voit que l'iconographie a changer

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573379554502.png)

Apres le commit, la revision du fichier a changer

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573379599251.png)

## Mise en place d'un lock

Il est possible de positionner un lock sur un fichier

Lors d'un commit sur un fichier locker eclipse refuse le commit

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573380475679.png)

## Conflits

### Conflit simple

Le conflit arrive lorsque qu'un fichier est edtier par plusieurs utilisteurs

Lors du commit dans Eclipse on a

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573381190260.png)

Ce qui signifie qu'il faut faire un update avant

Apres l'update, on peut faire un commit

### Conflit avec resolution

Si le conflit apparait au même endroit cela est moins simple

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573406352284.png)

Lors de l'update, Eclipse signale un probleme:

update D:/MyJavaProjects/etnic2/TestSVNOnEtnic/src/Main.java -r HEAD --force  
C D:/MyJavaProjects/etnic2/TestSVNOnEtnic/src/Main.java  
Updated to revision 15.  
==== Conflict Statistics: =====  
File conflicts: 1

Ce qui donne lors de l'édition des conflits:

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573406460669.png)

Lorsque le conflit est résolue, on marque le conflit comme étant résolue

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573406541548.png)

Puis on commit

## Création de la branche

Créer la branche comme un repertoire

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573407175007.png)

Cliquez avec le bouton droit sur le dossier de la ligne réseau, sélectionnez Equipe&gt; Branche / Tag. Copier vers l'URL:

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573407191979.png)

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573407208546.png)

Puis changer de branches

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573407282080.png)

Eclipse l'indique ensuite

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573407311203.png)

Fusion du tronc vers la branche, ou vice versa

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573461764774.png)

Cliquez avec le bouton droit de la souris sur la branche ou le coffre, sélectionnez Equipe&gt; Fusionner. Choisissez Fusionner une plage de révisions si la fusion va du tronc à la branche. Sinon, sélectionnez Réintégrer une branche.

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573461849454.png)

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573462047565.png)

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573462140623.png)

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573462292865.png)

## Annuler un commit

Dans la page SVN History, il est possible d'annuler des changements

![](https://teach.pilou.online/uploads/images/gallery/2019-11/scaled-1680-/image-1573462605108.png)