« Utilisation de SVN » : différence entre les versions
Ligne 25 : | Ligne 25 : | ||
* Création du dépôt |
* Création du dépôt |
||
Dans le répertoire dédié aux dépots (/export/svn) |
|||
L'utilisateur doit créer le dépôt initial avec la commande <font color="#007799">svnadmin create PROJET_A.</font> |
L'utilisateur doit créer le dépôt initial avec la commande <font color="#007799">svnadmin create PROJET_A.</font> |
||
Ligne 30 : | Ligne 31 : | ||
<font color="#007799"> (chmod -R g+rw *).</font> |
<font color="#007799"> (chmod -R g+rw *).</font> |
||
<font color="#FF8000"> Ici PATH fait référence à /export/svn</font> |
|||
* Initier un dépôt (premier dépôt des sources) |
* Initier un dépôt (premier dépôt des sources) |
||
<font color="#007799">svn import -m "Version originale" REPERTOIRE_LOCAL svn+ssh://USER@serveur/PROJET_A</font> |
<font color="#007799">svn import -m "Version originale" REPERTOIRE_LOCAL svn+ssh://USER@serveur/PATH/PROJET_A</font> |
||
(Remplacer les majuscules par vos valeurs). |
(Remplacer les majuscules par vos valeurs). |
||
* Récupérer un dépôt existant |
* Récupérer un dépôt existant |
||
Commande à exécuter dans le répertoire parent, qui contiendra la copie locale : |
Commande à exécuter dans le répertoire parent, qui contiendra la copie locale : |
||
<font color="#007799"> svn checkout svn+ssh://serveur/PROJET_A</font>. |
<font color="#007799"> svn checkout svn+ssh://serveur/PATH/PROJET_A</font>. |
||
Si l'authentification est requise pour votre dépôt, précisez votre nom d'utilisateur de cette manière : |
Si l'authentification est requise pour votre dépôt, précisez votre nom d'utilisateur de cette manière : |
||
<font color="#007799">svn checkout svn+ssh://USER@serveur/PROJET_A</font> |
<font color="#007799">svn checkout svn+ssh://USER@serveur/PATH/PROJET_A</font> |
||
* Récupérer <font color="#FF8000"> une partie seulement</font> d'un dépôt existant |
* Récupérer <font color="#FF8000"> une partie seulement</font> d'un dépôt existant |
||
Commande à exécuter dans le répertoire parent, qui contiendra la copie locale : |
Commande à exécuter dans le répertoire parent, qui contiendra la copie locale : |
||
<font color="#007799"> svn checkout svn+ssh://serveur/PROJET_A/SousRep</font>. |
<font color="#007799"> svn checkout svn+ssh://serveur/PATH/PROJET_A/SousRep</font>. |
||
Avec authentification : |
Avec authentification : |
||
<font color="#007799">svn checkout svn+ssh://USER@serveur/PROJET_A/SousRep</font> |
<font color="#007799">svn checkout svn+ssh://USER@serveur/PATH/PROJET_A/SousRep</font> |
||
* Récupérer la dernière version d'un dépôt |
* Récupérer la dernière version d'un dépôt |
Version du 10 février 2011 à 09:14
Svn (subversion) est le successeur de CVS et permet la gestion collaborative de développement de codes ou de documents.
Informations administration
La configuration présentée ici est une configuration TRES TEMPORAIRE qui va donc certainement fortement évoluer en fonction des souhaits des différents utilisateurs.
Localisation du serveur
La machine sur laquelle est installée le serveur svn est aussi la machine qui contient physiquement les dépôts.
- Machine invitée (Bibliothèque) : 193.48.123.84 (d84.lama.univ-savoie.fr) (ci après serveur)
- Répertoire qui contient les dépôts : /export/svn
Informations pour utilisation
Avant de pouvoir créer un dépôt, vous devez avoir été ajouté au groupe des utilisateurs de svn et l'administrateur doit créer la racine du dépôt : merci donc de venir me voir ou m'envoyer un mail avec le nom du projet et les participants.
Utilisation basique
- Création du dépôt
Dans le répertoire dédié aux dépots (/export/svn) L'utilisateur doit créer le dépôt initial avec la commande svnadmin create PROJET_A.
ATTENTION A CHANGER LES DROITS DE L'ENSEMBLE DU REPERTOIRE POUR METTRE LES FICHIERS EN ECRITURE POUR TOUS LES MEMBRES DU GROUPE ! (chmod -R g+rw *).
Ici PATH fait référence à /export/svn
- Initier un dépôt (premier dépôt des sources)
svn import -m "Version originale" REPERTOIRE_LOCAL svn+ssh://USER@serveur/PATH/PROJET_A (Remplacer les majuscules par vos valeurs).
- Récupérer un dépôt existant
Commande à exécuter dans le répertoire parent, qui contiendra la copie locale : svn checkout svn+ssh://serveur/PATH/PROJET_A.
Si l'authentification est requise pour votre dépôt, précisez votre nom d'utilisateur de cette manière : svn checkout svn+ssh://USER@serveur/PATH/PROJET_A
- Récupérer une partie seulement d'un dépôt existant
Commande à exécuter dans le répertoire parent, qui contiendra la copie locale : svn checkout svn+ssh://serveur/PATH/PROJET_A/SousRep. Avec authentification : svn checkout svn+ssh://USER@serveur/PATH/PROJET_A/SousRep
- Récupérer la dernière version d'un dépôt
Depuis la copie de travail locale (le répertoire local qui contient le projet) : svn update
- Enregistrer des modifications dans un dépôt
Depuis la copie de travail locale (le répertoire local qui contient le projet) : svn commit -m "Message"
- Ajout de fichiers dans un dépôt
- Ajout d'un fichier :
svn add PATH/file et ensuite faire un commit des modification avec svn commit.
- Ajout de plusieurs fichiers
Pour ajouter plusieurs fichiers d'un répertoire, la commande suivante le fait toute seule : /usr/bin/svn status | /bin/grep '?' | /bin/sed -e 's/^\?[ ]*//' | /usr/bin/xargs -iFILE /usr/bin/svn add "FILE" ou encore on peut utiliser svn add * --force : ajout de tout les nouveaux fichiers récursivement.
Attention : pensez à faire un update, vos modifications et ensuite un commit
Documentations diverses
http://www.limsi.fr/Individu/pointal/subversion/
LE LIVRE : http://svnbook.red-bean.com/en/1.5/