Google code et subversion
Pour utiliser svn avec Google code sous Eclipse, il faut installer le plugin subclipse.
Installer subclipse
Dans Eclipse :
- Help/Install new software
- Ajouter un Repository site à l'adresse : http://subclipse.tigris.org/update_1.6.x
- Installer subclipse
Google code
Créer le projet dans Google code :
- Choisir subversion comme Version Control System
Premier commit
Dans Google code:
- Copier l'URL SVN du projet en allant dans la partie Source du projet dans Google code :
- Noter également le mot de passe à utiliser en cliquant sur le lien googlecode.com password
Dans Eclipse :
- Créer un projet (Java ou Dynamic Web Project)
- Choisir Team/share project dans le menu contextuel du projet
- Coller l'URL SVN du projet
- Effectuer le commit initial
- Vérifier la création du projet en parcourant le code dans Google Code (Sources/Browse)
Récupérer une première fois un projet
Dans Eclipse :
- Choisir File/Import/CheckOut Projects from SVN
- Coller à nouveau l'URL SVN du projet Google code
Ajout de fichiers et Commits suivants
Avant de travailler :
Il est impératif de travailler sur une version mise à jour…
- Sélectionner le projet dans Eclipse
- Team/Synchronise with repository
Vous travaillez sur le projet…
- Pour ajouter un fichier créé à la publication sur Google code : dans le menu contextuel du fichier Team/Add to version control
- Pour les fichiers ne devant pas être publiés : dans le menu contextuel du fichier Team/Add to svn:ignore…
En fin de travail, ou au fur et à mesure :
- Faire des Commits Team/commit…
Conflits
Un conflit peut survenir quand plusieurs personnes travaillent sur des mêmes fichiers. Exemple :
- le développeur lambda travaille et modifie le fichier Metier.java, mis à jour depuis le repository.
- le développeur alpha travaille lui aussi sur le fichier Metier.java, mis à jour depuis le repository.
- lambda fait un commit : pas de problèmes
- alpha fait un commit : message d'erreur → ressource out of date : conflict
alpha doit faire Team/Synchronize with Repository, et passer en perspective Team synchronizing
- Activer le mode Conflicts (Flèche rouge)
- Ouvrir le fichier Metier.java
Dans l'exemple qui suit :
- alpha a ajouté un membre name dans la classe Metier
- lambda a ajouté un constructeur
Il convient d'ajouter le constructeur de lambda dans la version de alpha.
- Dans la fenêtre Comparaison, choisir Copy all non conflicting Changes From Right to Left
- Le fichier Metier.java de alpha doit maintenant contenir les modifications de lambda
- Marquer le fichier comme merged
- Faire le commit