« Utilisation de SVN » : différence entre les versions

De Wiki du LAMA (UMR 5127)
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Aucun résumé des modifications
 
(29 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
<center><font color="#FF8000"> '''SVN''' </font></center>


Svn (subversion) est le successeur de CVS et permet la gestion collaborative de développement de codes ou de documents.
Svn (subversion) est le successeur de CVS et permet la gestion collaborative de développement de codes ou de documents.


== '''Informations générales''' ==


La machine sur laquelle est installée le serveur svn est aussi la machine qui contient physiquement les dépôts.
==<font color="#dd2200"> '''Informations administration''' </font>==


- Machine : 193.48.123.84 (d84.lama.univ-savoie.fr) (ci après serveur)
<font color="#dd2200"> 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.</font>


<font color="#dd2200"> Localisation du serveur </font>
- Répertoire qui contient les dépôts : /export/svn : ici après <font color="#dd2200"> PATH </font>


== '''Informations pour utilisation''' ==
La machine sur laquelle est installée le serveur svn est aussi la machine qui contient physiquement les dépôts.


''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.''
- 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


<font color="#dd2200"> Attention, cela signifie que pour le moment les dépôts ne font pas partie de l'espace sauvegardé du LAMA ! </font>


<font color="#FF8000"> Utilisation basique </font>
admin-lama doit créer le dépôt initial (svnadmin create PORJET) et donne ensuite les droits aux utilisateurs du projet.


* Création du dépôt
==<font color="#FF8000"> '''Informations pour utilisation''' ==
Se logger sur le serveur svn : d84.lama.univ-savoie.fr
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>


ATTENTION A CHANGER LES DROITS DE L'ENSEMBLE DU REPERTOIRE POUR METTRE LES FICHIERS EN ECRITURE POUR TOUS LES MEMBRES DU GROUPE !
''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.''</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)
depuis votre machine locale :
<font color="#007799">svn import -m "Version originale" REPERTOIRE_LOCAL svn+ssh://USER@serveur/PATH/PROJET_A</font>
(Remplacer les majuscules par vos valeurs).
Cela permet de mettre pour la première fois le répertoire ou les fichiers à versionner


* Récupérer un dépôt existant
<font color="#FF8000"> Utilisation basique </font>
Depuis votre machine locale
* Initier un dépôt
Commande à exécuter dans le répertoire parent, qui contiendra la copie locale :
<font color="#007799">svn import -m "Version originale" REPERTOIRE_LOCAL svn+ssh://USER@serveur/PROJET</font>
<font color="#007799"> svn checkout svn+ssh://serveur/PATH/PROJET_A</font>.
(Remplacer les majuscules par vos valeurs)


Si l'authentification est requise pour votre dépôt, précisez votre nom d'utilisateur de cette manière :
* Récupérer un dépôt
<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
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</font>
<font color="#007799"> svn checkout svn+ssh://serveur/PATH/PROJET_A/SousRep</font>.
Avec authentification :
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</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
Depuis la copie de travail locale (le répertoire local qui contient le projet) : <font color="#007799">svn update</font>
Depuis la copie de travail locale (le répertoire local qui contient le projet) : <font color="#007799">svn update</font>
Ligne 42 : Ligne 53 :
Depuis la copie de travail locale (le répertoire local qui contient le projet) : <font color="#007799">svn commit -m "Message"</font>
Depuis la copie de travail locale (le répertoire local qui contient le projet) : <font color="#007799">svn commit -m "Message"</font>


<font color="#FF8000"> Attention : pensez à faire un update, vos modifications et ensuite un commit </font>


* Ajout de fichiers dans un dépôt
** Ajout d'un fichier :
<font color="#007799">svn add filename</font> et ensuite faire un <font color="#007799">commit</font> des modification avec <font color="#007799">svn commit</font>.
** Ajout de plusieurs fichiers
Pour ajouter plusieurs fichiers d'un répertoire, la commande suivante le fait toute seule :
<font color="#007799">/usr/bin/svn status | /bin/grep '?' | /bin/sed -e 's/^\?[ ]*//' | /usr/bin/xargs -iFILE /usr/bin/svn add "FILE"</font>
ou encore on peut utiliser <font color="#007799">svn add * --force</font> : ajout de tout les nouveaux fichiers récursivement.
** Ajout d'un répertoire entier
<font color="#007799">svn add REPERTOIRE</font>. La commande "svn add" étant par défaut récursive, elle permet d'ajouter la totalité du répertoire.


<font color="#FF8000"> Attention : pensez à faire un update, vos modifications et ensuite un commit </font>


==<font color="#FF8000"> '''Documentations diverses''' ==
==<font color="#FF8000"> '''Documentations diverses''' ==
Ligne 50 : Ligne 72 :


http://www.limsi.fr/Individu/pointal/subversion/
http://www.limsi.fr/Individu/pointal/subversion/

LE LIVRE : http://svnbook.red-bean.com/en/1.5/

Dernière version du 7 avril 2020 à 12:24

Svn (subversion) est le successeur de CVS et permet la gestion collaborative de développement de codes ou de documents.

Informations générales

La machine sur laquelle est installée le serveur svn est aussi la machine qui contient physiquement les dépôts.

- Machine : 193.48.123.84 (d84.lama.univ-savoie.fr) (ci après serveur)

- Répertoire qui contient les dépôts : /export/svn : ici après PATH

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

Se logger sur le serveur svn : d84.lama.univ-savoie.fr 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)

depuis votre machine locale : svn import -m "Version originale" REPERTOIRE_LOCAL svn+ssh://USER@serveur/PATH/PROJET_A (Remplacer les majuscules par vos valeurs). Cela permet de mettre pour la première fois le répertoire ou les fichiers à versionner

  • Récupérer un dépôt existant

Depuis votre machine locale 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 filename 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.

    • Ajout d'un répertoire entier

svn add REPERTOIRE. La commande "svn add" étant par défaut récursive, elle permet d'ajouter la totalité du répertoire.


Attention : pensez à faire un update, vos modifications et ensuite un commit

Documentations diverses

http://subversion.tigris.org/

http://www.limsi.fr/Individu/pointal/subversion/

LE LIVRE : http://svnbook.red-bean.com/en/1.5/