303 lines
9.8 KiB
HTML
303 lines
9.8 KiB
HTML
<?xml version="1.0" encoding="UTF-8"?>
|
||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||
<head>
|
||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||
<title>Subversion</title>
|
||
<link rel="stylesheet" href="../../tuteurs.css" type="text/css" />
|
||
</head>
|
||
<body>
|
||
<div class="navigation">
|
||
<h1>Tuteurs informatique<br /><a href="../../meta/contact.html">Nous contacter</a></h1>
|
||
<hr />
|
||
<ul class="menu">
|
||
<li>
|
||
<a href="../../meta/charte_graphique.html">Utiliser ce site</a>
|
||
</li>
|
||
<li>
|
||
<a href="../../actualite.html">Actu et stages</a>
|
||
</li>
|
||
<li>
|
||
<a href="../../docs/">Docs à imprimer</a>
|
||
</li>
|
||
<li>
|
||
<a href="../../meta/plan_site.html">Plan du site</a>
|
||
</li>
|
||
<li>
|
||
<a href="../../search.html">Rechercher</a>
|
||
</li>
|
||
</ul>
|
||
<hr />
|
||
<ul class="arbre">
|
||
<li>
|
||
<a href="../../">Les tuteurs</a>
|
||
<ul class="arbre">
|
||
<li>
|
||
<a href="../">Logiciels</a>
|
||
<ul class="arbre">
|
||
<li>
|
||
<a href="./" class="actuel">Subversion</a>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
<hr />
|
||
<ul class="menu">
|
||
<li>
|
||
<a href="http://www.eleves.ens.fr/">Serveur des élèves</a>
|
||
</li>
|
||
<li>
|
||
<a href="http://www.ens.fr/">ENS</a>
|
||
</li>
|
||
<li>
|
||
<a href="http://www.spi.ens.fr/">SPI</a>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
<div class="corps">
|
||
<h1>Contrôle de versions avec Subversion</h1>
|
||
<div class="sommaire">
|
||
<ul>
|
||
<li>
|
||
<a href="#s1">Préliminaires à l'utilisation de Subversion</a>
|
||
<ul>
|
||
<li>
|
||
<a href="#s1_1">Créer un répertoire de dépôt</a>
|
||
</li>
|
||
<li>
|
||
<a href="#s1_2">Ajouter des projets</a>
|
||
</li>
|
||
<li>
|
||
<a href="#s1_3">Créer des répertoires de travail</a>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li>
|
||
<a href="#s2">Subversion au quotidien</a>
|
||
<ul>
|
||
<li>
|
||
<a href="#s2_1">Mettre à jour un répertoire de travail</a>
|
||
</li>
|
||
<li>
|
||
<a href="#s2_2">Ajout et retrait de fichiers</a>
|
||
</li>
|
||
<li>
|
||
<a href="#s2_3">Distribuer vos modifications</a>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li>
|
||
<a href="#s3">Fonctionnalités avancées de Subversion</a>
|
||
<ul>
|
||
<li>
|
||
<a href="#s3_1">Historique</a>
|
||
</li>
|
||
<li>
|
||
<a href="#s3_2">Comparaison de fichiers</a>
|
||
</li>
|
||
<li>
|
||
<a href="#s3_3">Retour à la version antérieure</a>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
<li>
|
||
<a href="#s4">En savoir plus</a>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
<p>
|
||
Le logiciel Subversion permet de gérer l'évolution de projets et leurs
|
||
différentes versions. Si vous connaissez <a href="../../logiciels/rcs">RCS</a> ou <a href="../../logiciels/cvs">CVS</a>, Subversion entend leur
|
||
succéder et en moderniser le principe.
|
||
</p>
|
||
<h2>
|
||
<a name="s1" id="s1">Préliminaires à l'utilisation de Subversion</a>
|
||
</h2>
|
||
<h3>
|
||
<a name="s1_1" id="s1_1">Créer un répertoire de dépôt</a>
|
||
</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 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>
|
||
<a name="s1_2" id="s1_2">Ajouter des projets</a>
|
||
</h3>
|
||
<p>
|
||
Pour ajouter des projets à Subversion, allez d'abord dans le répertoire
|
||
contenant les fichiers du projet (s'ils existent). Dans notre exemple,
|
||
disons que vous avez un répertoire nommé <code>mon_projet</code>, qui
|
||
contient un seul fichier, intitulé <code>fichier1</code>.
|
||
</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 :
|
||
</p>
|
||
<ul>
|
||
<li> un répertoire de dépôt ;</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>
|
||
<a name="s1_3" id="s1_3">Créer des répertoires de travail</a>
|
||
</h3>
|
||
<p class="continue">
|
||
Il ne vous reste plus qu'à créer un (ou plusieurs) répertoire(s) de
|
||
travail :
|
||
</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 :
|
||
</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>
|
||
<a name="s2" id="s2">Subversion au quotidien</a>
|
||
</h2>
|
||
<h3>
|
||
<a name="s2_1" id="s2_1">Mettre à jour un répertoire de travail</a>
|
||
</h3>
|
||
<p>
|
||
Pour mettre à jour votre répertoire de travail, utilisez la
|
||
commande :
|
||
</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 :
|
||
</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>
|
||
<a name="s2_2" id="s2_2">Ajout et retrait de fichiers</a>
|
||
</h3>
|
||
<p>
|
||
Pour ajouter des fichiers, commencez par les créer, comme à
|
||
l'accoutumée. Par exemple, éditez le fichier <code>fichier2</code> et
|
||
remplissez-le (ou non). Ensuite, tapez :
|
||
</p>
|
||
<pre><span class="prompt">bireme ~ $</span> svn add fichier2
|
||
</pre>
|
||
<p class="continue">
|
||
Cette commande avertit Subversion qu'il devra prendre en compte ce
|
||
nouveau fichier. Le fichier sera ajouté au dépôt Subversion la prochaine
|
||
fois que vous taperez <code>svn commit</code>. Attention ! Si
|
||
vous ne tapez pas <code>svn commit</code>, le fichier ne sera pas
|
||
ajouté au dépôt !
|
||
</p>
|
||
<p>
|
||
Pour retirer des fichiers de Subversion, utilisez la commande :
|
||
</p>
|
||
<pre><span class="prompt">bireme ~ $</span> svn delete fichier
|
||
</pre>
|
||
<h3>
|
||
<a name="s2_3" id="s2_3">Distribuer vos modifications</a>
|
||
</h3>
|
||
<p>
|
||
Quand vous avez terminé d'apporter vos modifications, vous pouvez les
|
||
distribuer :
|
||
</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 :
|
||
</p>
|
||
<pre><span class="prompt">bireme ~ $</span> svn commit <em>fichier1 fichier2 etc.</em>
|
||
</pre>
|
||
<h2>
|
||
<a name="s3" id="s3">Fonctionnalités avancées de Subversion</a>
|
||
</h2>
|
||
<h3>
|
||
<a name="s3_1" id="s3_1">Historique</a>
|
||
</h3>
|
||
<p>
|
||
Vous pouvez consulter l'historique d'un fichier :
|
||
</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 :
|
||
</p>
|
||
<pre><span class="prompt">bireme ~ $</span> svn log
|
||
</pre>
|
||
<h3>
|
||
<a name="s3_2" id="s3_2">Comparaison de fichiers</a>
|
||
</h3>
|
||
<p>
|
||
Vous pouvez comparer deux versions d'un fichier, ici la première et la
|
||
deuxième versions :
|
||
</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 :
|
||
</p>
|
||
<pre><span class="prompt">bireme ~ $</span> svn diff --revision PREV:COMMITTED fichier
|
||
</pre>
|
||
<h3>
|
||
<a name="s3_3" id="s3_3">Retour à la version antérieure</a>
|
||
</h3>
|
||
<p>
|
||
Si vous regrettez les modifications apportées à un fichier, tapez :
|
||
</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>
|
||
<a name="s4" id="s4">En savoir plus</a>
|
||
</h2>
|
||
<p>
|
||
Pour en savoir plus sur Subversion, consultez :
|
||
</p>
|
||
<ul>
|
||
<li> un ouvrage de référence : <a href="http://svnbook.red-bean.com/">Version Control with Subversion</a>
|
||
(en anglais) ;</li>
|
||
<li> la page d'aide de Subversion : <code>svn help</code>.</li>
|
||
</ul>
|
||
<div class="metainformation">
|
||
Auteur : Baptiste Mélès.
|
||
Dernière modification : 2005-09-19 par Baptiste Mélès.
|
||
</div>
|
||
</div>
|
||
</body>
|
||
</html>
|