Bap: tutoriel sur Subversion

This commit is contained in:
meles 2005-09-16 12:25:45 +00:00
parent ad804c5084
commit 20a246d3f8
2 changed files with 251 additions and 3 deletions

View file

@ -37,22 +37,24 @@ supporte AIM, ICQ, <a
href="&url.tuteurs;internet/jabber.html">Jabber</a>, MSN, et Yahoo! href="&url.tuteurs;internet/jabber.html">Jabber</a>, MSN, et Yahoo!
Messenger.</li> Messenger.</li>
<li><a href="rcs/">le controle de versions avec <li><a href="rcs/">le contrôle de versions avec
<strong>RCS</strong></a> : un petit logiciel permettant de gérer <strong>RCS</strong></a> : un petit logiciel permettant de gérer
différentes versions d'un seul fichier (aide-mémoire de Roberto différentes versions d'un seul fichier (aide-mémoire de Roberto
Dicosmo);</li> Dicosmo);</li>
<li><a href="cvs/">le controle de versions avec <li><a href="cvs/">le contrôle de versions avec
<strong>CVS</strong></a> : un logiciel très puissant pour gérer <strong>CVS</strong></a> : un logiciel très puissant pour gérer
différentes versions de beaucoup de fichiers produits éventuellement différentes versions de beaucoup de fichiers produits éventuellement
par de multiples utilisateurs. </li> par de multiples utilisateurs. </li>
<li><a href="subversion/">le contrôle de versions avec
<strong>Subversion</strong></a>. </li>
</ul> </ul>
<div class="metainformation"> <div class="metainformation">
Auteur : Joël Riou. Dernière modification <date value="$Date: 2004-10-05 11:08:59 $" />. Auteur : Joël Riou. Dernière modification <date value="$Date: 2005-09-16 12:25:45 $" />.
</div> </div>
</body> </body>

View file

@ -0,0 +1,246 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html
PUBLIC "-//ENS/Tuteurs//DTD TML 1//EN"
"tuteurs://DTD/tml.dtd">
<html>
<head>
<title>Subversion</title>
</head>
<body>
<h1>Contrôle de versions avec Subversion</h1>
<p>
Le logiciel Subversion permet de gérer l'évolution de projets et leurs
différentes versions. Si vous connaissez RCS ou&nbsp;CVS, Subversion
entend leur succéder et en moderniser le principe.
</p>
<h2>Préliminaires à l'utilisation de Subversion</h2>
<h3>Créer un répertoire de dépôt</h3>
<p>
Pour gérer l'évolution de projets (qu'il s'agisse de fichiers TeX, de
programmes ou de scripts en n'importe quel langage, etc.), il faut
d'abord, comme sous&nbsp;CVS, créer un répertoire de dépôt.
</p>
<pre>
<span class="prompt">bireme ~ $</span> mkdir svn
<span class="prompt">bireme ~ $</span> svnadmin create svn
<span class="prompt">bireme ~ $</span>
</pre>
<p>
Vous avez maintenant un répertoire de dépôt prêt à recevoir vos projets.
</p>
<h3>Ajouter des projets</h3>
<p>
Pour ajouter des projets à Subversion, tapez&nbsp;:
</p>
<pre>
<span class="prompt">bireme ~ $</span> svn import mon_projet file:///users/promo/section/login/svn -m "version0"
Adding mon_projet/fichier1
Committed revision 1.
<span class="prompt">bireme ~ $</span>
</pre>
<p class="continue">
Maintenant, vous avez&nbsp;:
</p>
<ul>
<li> un répertoire de dépôt&nbsp;;</li>
<li> un projet déposé dans ce dernier.</li>
</ul>
<p>
Vous pouvez déposer autant de projets que vous le désirez dans votre
répertoire de dépôt.
</p>
<h3>Créer des répertoires de travail</h3>
<p class="continue">
Il ne vous reste plus qu'à créer un (ou plusieurs) répertoire(s) de
travail&nbsp;:
</p>
<pre>
<span class="prompt">bireme ~ $</span> svn checkout file:///users/promo/section/login/svn svn-travail
A mon_projet/fichier
Checked out revision 1.
<span class="prompt">bireme ~ $</span>
</pre>
<p>
Évidemment, vous pouvez travailler sur un projet même si le répertoire
de dépôt n'est pas chez vous. Pour cela, tapez simplement l'URL du
projet. En voici quelques exemples&nbsp;:
</p>
<pre>
<span class="prompt">bireme ~ $</span> svn checkout http:///adresse/repertoire/projet svn-travail
<span class="prompt">bireme ~ $</span> svn checkout https:///adresse/repertoire/projet svn-travail
<span class="prompt">bireme ~ $</span> svn checkout svn:///adresse/repertoire/projet svn-travail
<span class="prompt">bireme ~ $</span> svn checkout svn+ssh:///adresse/repertoire/projet svn-travail
</pre>
<p>
Vous récoltez ainsi tous les fichiers du projet. Modifiez-les de la
façon habituelle, typiquement avec un éditeur de texte.
</p>
<h2>Subversion au quotidien</h2>
<h3>Mettre à jour un répertoire de travail</h3>
<p>
Pour mettre à jour votre répertoire de travail, utilisez la
commande&nbsp;:
</p>
<pre>
<span class="prompt">bireme ~ $</span> svn update
</pre>
<p class="continue">
ou bien, si vous ne voulez mettre à jour qu'un nombre limité de
fichiers&nbsp;:
</p>
<pre>
<span class="prompt">bireme ~ $</span> svn update <em>fichier1 fichier2 etc.</em>
</pre>
<p>
Apportez les modifications que vous voulez sur les fichiers de votre
répertoire de travail.
</p>
<h3>Ajout et retrait de fichiers</h3>
<p>
Pour ajouter des fichiers, utilisez la commande&nbsp;:
</p>
<pre>
<span class="prompt">bireme ~ $</span> svn add fichier
</pre>
<p>
Pour retirer des fichiers de Subversion, utilisez la commande&nbsp;:
</p>
<pre>
<span class="prompt">bireme ~ $</span> svn delete fichier
</pre>
<h3>Distribuer vos modifications</h3>
<p>
Quand vous avez terminé d'apporter vos modifications, vous pouvez les
distribuer&nbsp;:
</p>
<pre>
<span class="prompt">bireme ~ $</span> svn commit
</pre>
<p class="continue">
ou bien, si vous ne voulez distribuer qu'un nombre limité de
fichiers&nbsp;:
</p>
<pre>
<span class="prompt">bireme ~ $</span> svn commit <em>fichier1 fichier2 etc.</em>
</pre>
<h2>Fonctionnalités avancées de Subversion</h2>
<h3>Historique</h3>
<p>
Vous pouvez consulter l'historique d'un fichier&nbsp;:
</p>
<pre>
<span class="prompt">bireme ~ $</span> svn log <em>fichier</em>
</pre>
<p class="continue">
mais aussi de tous les fichiers d'un projet&nbsp;:
</p>
<pre>
<span class="prompt">bireme ~ $</span> svn log
</pre>
<h3>Comparaison de fichiers</h3>
<p>
Vous pouvez comparer deux versions d'un fichier, ici la première et la
deuxième versions&nbsp;:
</p>
<pre>
<span class="prompt">bireme ~ $</span> svn diff --revision 1:2 fichier
</pre>
<p>
Vous pouvez aussi comparer, par exemple, la dernière version distribuée
d'un fichier avec la précédente&nbsp;:
</p>
<pre>
<span class="prompt">bireme ~ $</span> svn diff --revision PREV:COMMITTED fichier
</pre>
<h3>Retour à la version antérieure</h3>
<p>
Si vous regrettez les modifications apportées à un fichier, tapez&nbsp;:
</p>
<pre>
<span class="prompt">bireme ~ $</span> svn revert <em>fichier</em>
</pre>
<p class="continue">
Le fichier reviendra à son état antérieur.
</p>
<h2>En savoir plus</h2>
<p>
Pour en savoir plus sur Subversion, consultez&nbsp;:
</p>
<ul>
<li> un ouvrage de référence&nbsp;: <a
href="http://svnbook.red-bean.com/">Version Control with Subversion</a>
(en anglais)&nbsp;;</li>
<li> la page d'aide de Subversion&nbsp;: <code>svn help</code>.</li>
</ul>
<div class="metainformation">
Auteur : Baptiste Mélès.
Dernière modification le <date value="$Date: 2005-09-16 12:26:00 $" />.
</div>
</body>
</html>