<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://prendreuncafe.com/blog/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
  <title>Prendre un Café - Tag - subversion</title>
  <link>http://prendreuncafe.com/blog/</link>
  <atom:link href="http://prendreuncafe.com/blog/feed/tag/subversion/rss2" rel="self" type="application/rss+xml"/>
  <description></description>
  <language>fr</language>
  <pubDate>Fri, 02 Mar 2012 11:41:49 +0100</pubDate>
  <copyright>Contenus sous licence Creative Commons BY-SA</copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>Eclipse PDT, Subclipse et Subversion 1.5.2 sont dans un bateau</title>
    <link>http://prendreuncafe.com/blog/post/2008/09/22/Eclipse-PDT-Subclipse-et-Subversion-152-sont-dans-un-bateau</link>
    <guid isPermaLink="false">urn:md5:36388bb291814b5975ff7532ee5d45a4</guid>
    <pubDate>Mon, 22 Sep 2008 12:02:00 +0200</pubDate>
    <dc:creator>NiKo</dc:creator>
        <category>Dev</category>
        <category>eclipse</category><category>pdt</category><category>subclipse</category><category>subversion</category>    
    <description>    &lt;p&gt;Le package complet pour la version stable d&amp;#8217;&lt;a href=&quot;http://download.eclipse.org/tools/pdt/downloads/release.php?release=S20080601-RC2&quot; hreflang=&quot;en&quot;&gt;Eclipse PDT&lt;/a&gt; fournit &lt;a href=&quot;http://subclipse.tigris.org/&quot; hreflang=&quot;en&quot;&gt;Subclipse&lt;/a&gt;&lt;sup&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2008/09/22/Eclipse-PDT-Subclipse-et-Subversion-152-sont-dans-un-bateau#pnote-997-1&quot; id=&quot;rev-pnote-997-1&quot;&gt;1&lt;/a&gt;]&lt;/sup&gt; en version 1.2 par défaut.&lt;/p&gt;


&lt;p&gt;Cette version de Subclipse est incapable de gérer la &lt;a href=&quot;http://subversion.tigris.org/servlets/NewsItemView?newsItemID=2164&quot; hreflang=&quot;en&quot;&gt;dernière version du client Subversion&lt;/a&gt;, la 1.5.2. La moindre tentative d&amp;#8217;update devrait vous afficher ce message laconique&amp;#160;: &lt;q&gt;The version of this client is too old&lt;/q&gt;&lt;sup&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2008/09/22/Eclipse-PDT-Subclipse-et-Subversion-152-sont-dans-un-bateau#pnote-997-2&quot; id=&quot;rev-pnote-997-2&quot;&gt;2&lt;/a&gt;]&lt;/sup&gt;.&lt;/p&gt;


&lt;p&gt;Et bien entendu, il est au premier abord impossible de désinstaller le plugin Subclipse en version 1.2 fournit par PDT.&lt;/p&gt;


&lt;p&gt;Aussi, voici l&amp;#8217;astuce permettant de mettre à jour votre version de Subclipse au sein de votre environnement Exclipse/PDT&amp;#160;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Dans le menu &lt;em&gt;Software updates&lt;/em&gt;, choisissez &lt;em&gt;Manage configuration&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Dépliez l&amp;#8217;arborescence des dépendances pour le module PDT, et sélectionnez &lt;em&gt;Subclipse&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Cliquez sur &lt;em&gt;Disable&lt;/em&gt;, puis relancez Eclipse&lt;/li&gt;
&lt;li&gt;Dans &lt;em&gt;Software Updates&lt;/em&gt;, choisissez &lt;em&gt;Find and Install&lt;/em&gt; et ajoutez un nouveau dépôt distant&lt;sup&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2008/09/22/Eclipse-PDT-Subclipse-et-Subversion-152-sont-dans-un-bateau#pnote-997-3&quot; id=&quot;rev-pnote-997-3&quot;&gt;3&lt;/a&gt;]&lt;/sup&gt;, et renseignez le comme ci-dessous&amp;#160;:
&lt;ul&gt;
&lt;li&gt;Name&amp;#160;: &lt;code&gt;Subclipse 1.4.x&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;URL&amp;#160;: &lt;code&gt;http://subclipse.tigris.org/update_1.4.x&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;Sélectionnez ce dépôt, puis lancer la recherche de packages&lt;/li&gt;
&lt;li&gt;Sélectionnez les modules &lt;em&gt;Subclipse&lt;/em&gt; et &lt;em&gt;SVNKit&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;Redémarrez Eclipse&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Après ces manipulations, vos devriez retrouver vos fonctionnalités préférées.&lt;/p&gt;
&lt;div class=&quot;footnotes&quot;&gt;&lt;h4&gt;Notes&lt;/h4&gt;
&lt;p&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2008/09/22/Eclipse-PDT-Subclipse-et-Subversion-152-sont-dans-un-bateau#rev-pnote-997-1&quot; id=&quot;pnote-997-1&quot;&gt;1&lt;/a&gt;] Subclipse est un plugin intégrant Subversion à &lt;a href=&quot;http://eclipse.org/&quot; hreflang=&quot;en&quot;&gt;Eclipse&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2008/09/22/Eclipse-PDT-Subclipse-et-Subversion-152-sont-dans-un-bateau#rev-pnote-997-2&quot; id=&quot;pnote-997-2&quot;&gt;2&lt;/a&gt;] Et c&amp;#8217;est &lt;a href=&quot;http://prendreuncafe.com/blog/post/2007/10/29/Une-version-recente-de-Subversion-sous-Mac-OS-X&quot; hreflang=&quot;fr&quot;&gt;pas la première fois que ça arrive&lt;/a&gt;&amp;#8230;&lt;/p&gt;
&lt;p&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2008/09/22/Eclipse-PDT-Subclipse-et-Subversion-152-sont-dans-un-bateau#rev-pnote-997-3&quot; id=&quot;pnote-997-3&quot;&gt;3&lt;/a&gt;] Chez Eclipse, on appelle ça un &lt;em&gt;Update site&lt;/em&gt;&lt;/p&gt;&lt;/div&gt;&lt;hr/&gt;&lt;p style=&quot;margin:.5em 0;padding:.5em;border:1px solid #333;background:#eee;color:#222&quot;&gt;&lt;small&gt;Ce billet intitulé &lt;a href=&quot;http://prendreuncafe.com/blog/post/2008/09/22/Eclipse-PDT-Subclipse-et-Subversion-152-sont-dans-un-bateau&quot;&gt;Eclipse PDT, Subclipse et Subversion 1.5.2 sont dans un bateau&lt;/a&gt; a été rédigé par &lt;a href=&quot;http://prendreuncafe.com/cv&quot;&gt;Nicolas Perriault&lt;/a&gt; et publié sur le blog &lt;a href=&quot;http://prendreuncafe.com/blog/&quot;&gt;Prendre un Café&lt;/a&gt; sous licence &lt;a href=&quot;http://creativecommons.org/licenses/by-nc-sa/2.5/&quot;&gt;Creative Commons BY-NC-SA&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Une version récente de Subversion sous Mac OS X</title>
    <link>http://prendreuncafe.com/blog/post/2007/10/29/Une-version-recente-de-Subversion-sous-Mac-OS-X</link>
    <guid isPermaLink="false">urn:md5:7404e4e6eba179d1f841cd2c9a8a2f1d</guid>
    <pubDate>Mon, 29 Oct 2007 10:18:00 +0100</pubDate>
    <dc:creator>NiKo</dc:creator>
        <category>Dev</category>
        <category>apple</category><category>mac</category><category>osx</category><category>subversion</category><category>svn</category>    
    <description>    &lt;p&gt;Utilisateurs d'&lt;a href=&quot;http://eclipse.org&quot; hreflang=&quot;en&quot;&gt;Eclipse&lt;/a&gt; et de &lt;a href=&quot;http://subclipse.tigris.org/&quot; hreflang=&quot;en&quot;&gt;Subclipse&lt;/a&gt;, vous avez peut-être déjà pesté devant l'incompatibilité de version qui existe avec celle disponible en ligne de commande sous Mac OS X (via &lt;a href=&quot;http://www.macports.org/&quot; hreflang=&quot;en&quot;&gt;MacPorts&lt;/a&gt;, &lt;a href=&quot;http://finkproject.org/&quot; hreflang=&quot;en&quot;&gt;Fink&lt;/a&gt;, etc.)&lt;/p&gt;


&lt;p&gt;Généralement, vous vous prenez un message d'erreur du style :&lt;/p&gt;


&lt;blockquote&gt;&lt;p&gt;The version of this client is too old.&lt;/p&gt;&lt;/blockquote&gt;


&lt;p&gt;Pour régler le problème, vous pouvez installer le package Subversion de &lt;a href=&quot;http://homepage.mac.com/martinott/&quot; hreflang=&quot;en&quot;&gt;Martin Ott&lt;/a&gt; en &lt;a href=&quot;http://homepage.mac.com/martinott/Subversion-1.4.4.pkg.zip&quot;&gt;version 1.4.4&lt;/a&gt;.&lt;/p&gt;&lt;hr/&gt;&lt;p style=&quot;margin:.5em 0;padding:.5em;border:1px solid #333;background:#eee;color:#222&quot;&gt;&lt;small&gt;Ce billet intitulé &lt;a href=&quot;http://prendreuncafe.com/blog/post/2007/10/29/Une-version-recente-de-Subversion-sous-Mac-OS-X&quot;&gt;Une version récente de Subversion sous Mac OS X&lt;/a&gt; a été rédigé par &lt;a href=&quot;http://prendreuncafe.com/cv&quot;&gt;Nicolas Perriault&lt;/a&gt; et publié sur le blog &lt;a href=&quot;http://prendreuncafe.com/blog/&quot;&gt;Prendre un Café&lt;/a&gt; sous licence &lt;a href=&quot;http://creativecommons.org/licenses/by-nc-sa/2.5/&quot;&gt;Creative Commons BY-NC-SA&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Créer un projet Symfony à partir des dépôts Subversion sous Ubuntu</title>
    <link>http://prendreuncafe.com/blog/post/2007/02/07/Creer-un-projet-Symfony-a-partir-des-depots-Subversion-sous-Ubuntu</link>
    <guid isPermaLink="false">urn:md5:1b3557fd236bb78b4c66ffd2a42082fd</guid>
    <pubDate>Wed, 07 Feb 2007 08:02:00 +0100</pubDate>
    <dc:creator>NiKo</dc:creator>
        <category>Dev</category>
        <category>bestpractices</category><category>framework</category><category>php</category><category>subversion</category><category>symfony</category>    
    <description>    &lt;p&gt;Un des gros avantages du framework &lt;a href=&quot;http://www.symfony-project.com/&quot; hreflang=&quot;en&quot;&gt;Symfony&lt;/a&gt;, c'est qu'il est &lt;a href=&quot;http://www.symfony-project.com/trac/timeline&quot; hreflang=&quot;en&quot;&gt;régulièrement mis à jour&lt;/a&gt;. En ce sens, l'utilisation de &lt;a href=&quot;http://svnbook.red-bean.com/en/1.0/ch07s03.html&quot; hreflang=&quot;en&quot;&gt;liaisons externes Subversion&lt;/a&gt; permet de s'affranchir des opérations récurrentes de mise à jour manuelles du code du framework.&lt;/p&gt;


&lt;p&gt;Seul prérequis pour mettre en oeuvre la technique décrite ci-après, &lt;a href=&quot;http://prendreuncafe.com/blog/post/2006/09/05/489-installer-et-configurer-apache2-trac-et-subversion-sur-ubuntu&quot; hreflang=&quot;fr&quot;&gt;avoir accès à un dépôt Subversion&lt;/a&gt; pour y stocker son propre projet personnel.&lt;/p&gt;


&lt;p&gt;Voyons donc comment créer un projet Symfony &lt;em&gt;from scratch&lt;/em&gt; à partir des sources du dépôt officiel, sous &lt;a href=&quot;http://ubuntu-fr.org&quot; hreflang=&quot;fr&quot;&gt;Ubuntu&lt;/a&gt; par exemple...&lt;/p&gt;


&lt;h3&gt;Conventions&lt;/h3&gt;


&lt;p&gt;Nous admettrons que nous avons mis en place un dépôt Subversion et que celui-ci est accessible à l'URL &lt;code&gt;http://trac.mondomaine.tld/svn/monprojet&lt;/code&gt;.&lt;/p&gt;


&lt;h3&gt;Création du projet subversion&lt;/h3&gt;


&lt;pre&gt;$ mkdir monprojet  &amp;amp;&amp;amp; cd monprojet&lt;/pre&gt;


&lt;p&gt;On versionne notre projet nouvellement créé dans Subversion et on en fait un &lt;em&gt;checkout&lt;/em&gt; en suivant :&lt;/p&gt;


&lt;pre&gt;$ echo &amp;quot;Mon projet README&amp;quot; &amp;gt; README
$ svn import -m &amp;quot;Initial import&amp;quot; . http://trac.mondomaine.tld/svn/monprojet
$ rm README &amp;amp;&amp;amp; svn co http://trac.mondomaine.tld/svn/monprojet .&lt;/pre&gt;


&lt;h3&gt;Liaison des sources de Symfony&lt;/h3&gt;


&lt;p&gt;On récupère le contenu intégral du trunk de Symfony dans un répertoire virtuel &lt;code&gt;vendor/symfony&lt;/code&gt;, grâce à un &lt;code&gt;svn:externals&lt;/code&gt; :&lt;/p&gt;


&lt;pre&gt;$ mkdir vendor &amp;amp;&amp;amp; svn add vendor
$ svn propset svn:externals &amp;quot;symfony http://svn.symfony-project.com/trunk/&amp;quot; vendor&lt;/pre&gt;


&lt;p&gt;On commite :&lt;/p&gt;


&lt;pre&gt;$ svn commit -m &amp;quot;Added svn:externals to sf trunk in vendor/&amp;quot; vendor/&lt;/pre&gt;


&lt;p&gt;On oublie pas d'updater :&lt;/p&gt;


&lt;pre&gt;$ svn up&lt;/pre&gt;


&lt;p&gt;L'intégralité du trunk de Symfony est alors téléchargé en local (cela peut prendre un peu de temps).&lt;/p&gt;


&lt;h3&gt;Création du projet Symfony&lt;/h3&gt;


&lt;p&gt;Pour bien utiliser les capacités de Subversion par la suite, on créé un répertoire &lt;code&gt;trunk&lt;/code&gt; dans lequel nous allons initialiser notre projet Symfony :&lt;/p&gt;


&lt;pre&gt;$ mkdir trunk &amp;amp;&amp;amp; cd trunk
$ ../vendor/symfony/data/bin/symfony init-project monprojet&lt;/pre&gt;


&lt;p&gt;De même, on crée en même temps les traditionnels répertoires &lt;code&gt;branches&lt;/code&gt; et &lt;code&gt;tags&lt;/code&gt; :&lt;/p&gt;


&lt;pre&gt;$ cd ..
$ mkdir branches tags&lt;/pre&gt;


&lt;p&gt;Pour l'heure, un ls -l nous donne à la racine du projet subversion :&lt;/p&gt;


&lt;pre&gt;$ ls -l
total 20
drwxr-xr-x  2 niko niko 4096 2007-02-07 17:02 branches
-rw-r--r--  1 niko niko   95 2007-02-07 16:47 README
drwxr-xr-x  2 niko niko 4096 2007-02-07 17:02 tags
drwxr-xr-x 13 niko niko 4096 2007-02-07 16:59 trunk
drwxr-xr-x  4 niko niko 4096 2007-02-07 16:56 vendor&lt;/pre&gt;


&lt;h3&gt;Configuration du projet Symfony&lt;/h3&gt;


&lt;p&gt;Il faut maintenant configurer le projet Symfony pour qu'il sâche trouver les librairies de base que nous avons précédemment récupéré - et surtout que le projet soit portable -, en éditant le fichier &lt;code&gt;trunk/config/config.php&lt;/code&gt; :&lt;/p&gt;


&lt;pre&gt;$sf_symfony_lib_dir  = dirname(__FILE__).'/../../vendor/symfony/lib';
$sf_symfony_data_dir = dirname(__FILE__).'/../../vendor/symfony/data';&lt;/pre&gt;


&lt;p&gt;On teste l'installation en lançant la commande &lt;code&gt;./symfony -T&lt;/code&gt; depuis la racine du projet Symfony :&lt;/p&gt;


&lt;pre&gt;$ cd trunk
$ ./symfony -T&lt;/pre&gt;


&lt;p&gt;Si ça marche, on ajoute tout ce qui est nouveau fichier, et on commite en suivant :&lt;/p&gt;


&lt;pre&gt;$ cd ..
$ svn stat | grep ? | awk '{ print $2 }' | xargs svn add
$ svn commit -m &amp;quot;File structure created, sf project initialized&amp;quot; .&lt;/pre&gt;


&lt;p&gt;On pourra également faire un lien symbolique vers le répertoire &lt;code&gt;web/sf&lt;/code&gt;, ou bien le définir en tant qu'alias dans le vhost apache :&lt;/p&gt;


&lt;pre&gt;&amp;lt;VirtualHost toto.monprojet.tld&amp;gt;
  (...)
  alias /sf /path/to/vendor/data/web/sf
  (...)
&amp;lt;/VirtualHost&amp;gt;&lt;/pre&gt;


&lt;h3&gt;Conclusion&lt;/h3&gt;


&lt;p&gt;L'avantage de toutes ces manipulations est que désormais, un &lt;code&gt;svn up&lt;/code&gt; mettra à jour non seulement les fichiers de notre application, mais également le framework en lui-même. Les éternels grincheux crieront au loup quand au danger de lier une version de développement (trunk), je leur répondrai qu'un &lt;code&gt;svn:externals&lt;/code&gt; peut tout aussi bien pointer vers une révision ou un tag particulier.&lt;/p&gt;


&lt;p&gt;Par exemple, si vous désirez éviter de lier le trunk de Symfony, vous pouvez lier la version 1.0RC2 en spécifiant son url dans votre &lt;code&gt;svn:externals&lt;/code&gt; :&lt;/p&gt;


&lt;pre&gt;$ svn propset svn:externals &amp;quot;symfony http://svn.symfony-project.com/tags/RELEASE_1_0_0_rc2/&amp;quot; vendor&lt;/pre&gt;


&lt;p&gt;Pour la suite, je vous renvoie à la &lt;a href=&quot;http://www.symfony-project.com/content/documentation.html&quot; hreflang=&quot;en&quot;&gt;documentation officielle de Symfony&lt;/a&gt; &lt;img src=&quot;/blog/themes/battlestar/smilies/smile.gif&quot; alt=&quot;:-)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;&lt;hr/&gt;&lt;p style=&quot;margin:.5em 0;padding:.5em;border:1px solid #333;background:#eee;color:#222&quot;&gt;&lt;small&gt;Ce billet intitulé &lt;a href=&quot;http://prendreuncafe.com/blog/post/2007/02/07/Creer-un-projet-Symfony-a-partir-des-depots-Subversion-sous-Ubuntu&quot;&gt;Créer un projet Symfony à partir des dépôts Subversion sous Ubuntu&lt;/a&gt; a été rédigé par &lt;a href=&quot;http://prendreuncafe.com/cv&quot;&gt;Nicolas Perriault&lt;/a&gt; et publié sur le blog &lt;a href=&quot;http://prendreuncafe.com/blog/&quot;&gt;Prendre un Café&lt;/a&gt; sous licence &lt;a href=&quot;http://creativecommons.org/licenses/by-nc-sa/2.5/&quot;&gt;Creative Commons BY-NC-SA&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;</description>
    
    
    
      </item>
    
  <item>
    <title>Installer et configurer Apache2, Trac et Subversion sur Ubuntu</title>
    <link>http://prendreuncafe.com/blog/post/2006/09/05/489-installer-et-configurer-apache2-trac-et-subversion-sur-ubuntu</link>
    <guid isPermaLink="false">urn:md5:ce98a5a07bc997870158768abaa5b077</guid>
    <pubDate>Tue, 05 Sep 2006 00:01:00 +0000</pubDate>
    <dc:creator>NiKo</dc:creator>
        <category>Ubuntu</category>
        <category>apache</category><category>subversion</category><category>trac</category><category>tutoriel</category><category>ubuntu</category>    
    <description>    &lt;p&gt;J'avais besoin d'un outil simple et complet pour gérer mes projets de développement hébergés sur ma nouvelle &lt;a href=&quot;http://www.dedibox.fr&quot; hreflang=&quot;fr&quot;&gt;Dédibouate&lt;/a&gt; flambant neuve et fraîchement équipée d'une distribution linux &lt;a href=&quot;http://fr.wikipedia.org/wiki/Ubuntu_Linux_Dapper_Drake&quot; hreflang=&quot;fr&quot;&gt;Ubuntu Dapper Drake LTS&lt;/a&gt;. Naturellement, &lt;a href=&quot;http://trac.edgewall.org/&quot; hreflang=&quot;en&quot;&gt;Trac&lt;/a&gt; et son copain &lt;a href=&quot;http://subversion.tigris.org/&quot; hreflang=&quot;en&quot;&gt;Subversion&lt;/a&gt; se sont imposés comme une évidence, d'autant que je les utilisent déjà au quotidien dans &lt;a href=&quot;http://www.clever-age.com&quot; hreflang=&quot;fr&quot;&gt;mon travail&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Je me mis alors en quête d'informations sur la procédure d'installation de ces outils sur Ubuntu avec mon copain &lt;a href=&quot;http://www.google.fr&quot; hreflang=&quot;fr&quot;&gt;Google&lt;/a&gt;. Je suis tombé sur moult liens interessants mais pas toujours tout à fait complets ni exhaustifs ; aussi je décidai humblement de rédiger le présent billet faisant la synthèse de la procédure que j'ai utilisée et qui marche chez moi &lt;sup&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2006/09/05/489-installer-et-configurer-apache2-trac-et-subversion-sur-ubuntu#pnote-785-1&quot; id=&quot;rev-pnote-785-1&quot;&gt;1&lt;/a&gt;]&lt;/sup&gt; &lt;img src=&quot;/blog/themes/battlestar/smilies/smile.gif&quot; alt=&quot;:)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;


&lt;h3&gt;Prérequis&lt;/h3&gt;


&lt;p&gt;Avant toute chose, il est bien entendu impératif de disposer d'une distribution &lt;a href=&quot;http://www.ubuntu.com/&quot; hreflang=&quot;en&quot;&gt;Ubuntu 6.06 LTS Dapper Drake&lt;/a&gt; et d'un accès root sur la machine.&lt;/p&gt;


&lt;h3&gt;Installation&lt;/h3&gt;


&lt;p&gt;Tout d'abord, &lt;a href=&quot;http://doc.ubuntu-fr.org/applications/apt/depots&quot; hreflang=&quot;fr&quot;&gt;activez les dépôts universe d'Ubuntu&lt;/a&gt;. Ceci fait, voici la liste des paquets à installer :&lt;/p&gt;


&lt;pre&gt;$ sudo apt-get update
$ sudo apt-get install subversion libapache2-svn libapache2-mod-python2.4 trac&lt;/pre&gt;


&lt;p&gt;La version de Trac fournie par les dépôts Ubuntu est la 0.9.3 &lt;sup&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2006/09/05/489-installer-et-configurer-apache2-trac-et-subversion-sur-ubuntu#pnote-785-2&quot; id=&quot;rev-pnote-785-2&quot;&gt;2&lt;/a&gt;]&lt;/sup&gt;. On crée le répertoire système pour les instances de Trac, par exemple dans &lt;code&gt;/var/trac&lt;/code&gt; &lt;sup&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2006/09/05/489-installer-et-configurer-apache2-trac-et-subversion-sur-ubuntu#pnote-785-3&quot; id=&quot;rev-pnote-785-3&quot;&gt;3&lt;/a&gt;]&lt;/sup&gt; sans oublier le de rendre accessible en écriture par apache:&lt;/p&gt;


&lt;pre&gt;$ sudo mkdir /var/trac
$ sudo chown www-data:www-data /var/trac&lt;/pre&gt;


&lt;h3&gt;Création d'une instance Trac pour votre projet&lt;/h3&gt;


&lt;p&gt;Il nous faut maintenant importer un projet dans Subversion. Pour l'exemple, nous créerons un projet nommé &lt;code&gt;monzouliprojet&lt;/code&gt;. Pour cela, rien de plus simple... sauf pour les feignants. En étant moi-même un des plus féroces, j'ai pensé à mes compatriotes et leur ai créé un script qui leur permettra d'importer automatiquement leurs projets dans Subversion et de les rendre ainsi facilement accessibles à l'instance de Trac que nous créerons par la suite. Vous &lt;a href=&quot;http://www.prendreuncafe.com/blog/share/bash/create_svn_repo.sh&quot; hreflang=&quot;fr&quot;&gt;trouverez le code ici&lt;/a&gt; (certainement très perfectible, contributions bienvenues.)&lt;/p&gt;


&lt;p&gt;Vous pouvez sauvegarder ce script dans un fichier &lt;code&gt;create_svn_repo.sh&lt;/code&gt; par exemple, sans oublier de le rendre executable :&lt;/p&gt;


&lt;pre&gt;$ chmod +x create_svn_repo.sh&lt;/pre&gt;


&lt;p&gt;Il faudra bien sûr le lancer au moyen de &lt;code&gt;sudo&lt;/code&gt; afin d'avoir les droits d'écritures dans les répertoires système concernés. Pour importer un nouveau projet Subversion à partir de vos sources existantes, il suffit de lancer le script et de répondre aux questions posées :&lt;/p&gt;


&lt;pre&gt;niko@nikobox:~$ sudo create_svn_repo.sh  
#######################################
Création d'un nouveau projet Subversion
#######################################

Tapez le nom du nouveau projet :
monzouliprojet
Tapez maintenant le chemin du répertoire source :
(Note: les répertoires trunk, branches et tags seront créés automatiquement)
/home/niko/monzouliprojet/
Création du projet monzouliprojet depuis /home/niko/monzouliprojet/...
Adding         /tmp/svn/monzouliprojet/trunk
Adding         /tmp/svn/monzouliprojet/trunk/test
Adding         /tmp/svn/monzouliprojet/trunk/test/main
...

Committed revision 1.

Projet subversion monzouliprojet créé avec succès !&lt;/pre&gt;


&lt;p&gt;&lt;strong&gt;Note :&lt;/strong&gt; Vous pouvez éditer le fichier du script pour y spécifier notament le chemin de la racine subversion &lt;sup&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2006/09/05/489-installer-et-configurer-apache2-trac-et-subversion-sur-ubuntu#pnote-785-4&quot; id=&quot;rev-pnote-785-4&quot;&gt;4&lt;/a&gt;]&lt;/sup&gt; :&lt;/p&gt;


&lt;pre&gt;SVN_ROOT=&amp;quot;/var/svn&amp;quot;&lt;/pre&gt;


&lt;p&gt;Ensuite, il faut initialiser l'environnement trac pour notre projet recemment importé dans Subversion, ce que l'on fait au moyen de la série de commande suivante &lt;sup&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2006/09/05/489-installer-et-configurer-apache2-trac-et-subversion-sur-ubuntu#pnote-785-5&quot; id=&quot;rev-pnote-785-5&quot;&gt;5&lt;/a&gt;]&lt;/sup&gt; :&lt;/p&gt;


&lt;pre&gt;sudo mkdir /var/trac
sudo trac-admin /var/trac/monzouliprojet initenv
sudo chown -R www-data /var/trac/monzouliprojet&lt;/pre&gt;


&lt;p&gt;Notez encore une fois que je crée la racine trac dans &lt;code&gt;/var/trac&lt;/code&gt; mais vous pouvez tout à fait utiliser un autre emplacement.&lt;/p&gt;


&lt;h3&gt;Créer un ou plusieurs utilisateurs Trac et Subversion, gérer les autorisations&lt;/h3&gt;


&lt;p&gt;Par défaut, une instance Trac permet à tous les visiteurs anonymes d'en modifier les contenus ; bien évidemment, c'est un comportement de l'application particulièrement risqué, ne serait-ce qu'en regard du spam potentiel que vous pourriez récolter. Nous allons donc successivement créer un utilisateur subversion, puis désactiver les contributions anonymes pour Trac et ajouter un utilisateur possédant les droits d'administration Trac. Notez que nous utiliserons le même fichier de stockage des noms d'utilisateurs et de mots de passe pour Trac et Subversion ; ce fichier sera appelé au niveau de notre fichier de configuration Apache - défini un peu plus bas dans ce tutoriel.&lt;/p&gt;


&lt;p&gt;Créons tout d'abord le fichier de stockage des mots de passe Trac/Subversion &lt;sup&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2006/09/05/489-installer-et-configurer-apache2-trac-et-subversion-sur-ubuntu#pnote-785-6&quot; id=&quot;rev-pnote-785-6&quot;&gt;6&lt;/a&gt;]&lt;/sup&gt; et ajoutons un utilisateur &lt;code&gt;maintener&lt;/code&gt; :&lt;/p&gt;


&lt;pre&gt;$ sudo htpasswd2 -c /etc/apache2/dav_svn.passwd maintener&lt;/pre&gt;


&lt;p&gt;Attribuez-lui un mot de passe. Bien, cet utilisateur aura par la suite officiellement accès à notre dépôt Subversion. Donnons-lui maintenant les droits d'administration totale de Trac :&lt;/p&gt;


&lt;pre&gt;$ sudo trac-admin /var/trac/monzouliprojet permission add maintener TRAC_ADMIN&lt;/pre&gt;


&lt;p&gt;On peut également imaginer la création d'un compte utilisateur développeur, qui peut créer des tickets, en fermer et maintenir le wiki :&lt;/p&gt;


&lt;pre&gt;$ sudo htpasswd2 -c /etc/apache2/dav_svn.passwd dev
$ sudo trac-admin /var/trac/monzouliprojet permission add dev WIKI_CREATE WIKI_MODIFY TICKET_CREATE TICKET_MODIFY&lt;/pre&gt;


&lt;p&gt;Il nous reste à desactiver les contributions anonymes :&lt;/p&gt;


&lt;pre&gt;$ sudo trac-admin /var/trac/monzouliprojet permission remove anonymous WIKI_CREATE WIKI_MODIFY TICKET_CREATE TICKET_MODIFY&lt;/pre&gt;


&lt;p&gt;Par la suite, vous pourrez effectuer la plupart de ces opérations par le biais du plugin WebAdmin dont nous détaillerons l'installation dans la partie suivante.&lt;/p&gt;


&lt;p&gt;Vous trouverez plus d'informations sur les privilèges de Trac sur &lt;a href=&quot;http://trac.edgewall.org/wiki/TracPermissions&quot; hreflang=&quot;en&quot;&gt;la page qui lui est consacrée&lt;/a&gt;.&lt;/p&gt;


&lt;p&gt;Côté Subversion, il nous faut autoriser les checkouts anonymes mais s'assurer que'un utilisateur est authentifié avant d'accepter ses commits. Cela se configure très facilement dans le fichier &lt;code&gt;/var/svn/monzouliprojet/conf/svnserve.conf&lt;/code&gt;, dans lequel vous pouvez saisir :&lt;/p&gt;


&lt;pre&gt;[general]
anon-access = read
auth-access = write
password-db = passwd 
# authz-db = authz
realm = MonZouliProjet Subversion Repository&lt;/pre&gt;


&lt;h3&gt;Installer Trac WebAdmin&lt;/h3&gt;


&lt;p&gt;&lt;a href=&quot;http://trac.edgewall.org/wiki/WebAdmin&quot; hreflang=&quot;en&quot;&gt;Trac WebAdmin&lt;/a&gt; est une interface web d'administration de votre ou vos instance(s) Trac offrant un confort appréciable pour administrer vos projets et en gérer les paramètres. Même si nous n'avons pas encore défini de vhost apache, rien ne nous empêche d'installer le plugin, qui passe d'abord par l'installation des &lt;em&gt;setuptools&lt;/em&gt; :&lt;/p&gt;


&lt;pre&gt;$ wget http://peak.telecommunity.com/dist/ez_setup.py
$ sudo python ez_setup.py&lt;/pre&gt;


&lt;p&gt;Ceci fait, téléchargez le fichier de plugin &lt;a href=&quot;http://trac.edgewall.org/wiki/TracWebAdmin&quot; hreflang=&quot;en&quot;&gt;TracWebAdmin&lt;/a&gt; sur le site de Trac, supprimez son extension &lt;code&gt;.zip&lt;/code&gt; et installez-le au moyen du programme &lt;code&gt;easy_install&lt;/code&gt; précédemment installé, comme suit :&lt;/p&gt;


&lt;pre&gt;$ wget http://trac.edgewall.org/attachment/wiki/WebAdmin/TracWebAdmin-0.1.1dev_r2765-py2.4.egg.zip?format=raw
$ mv TracWebAdmin-0.1.1dev_r2765-py2.4.egg.zip\?format\=raw TracWebAdmin.egg
$ sudo easy_install TracWebAdmin.egg&lt;/pre&gt;


&lt;p&gt;Éditez votre fichier de configuration d'instance Trac :&lt;/p&gt;


&lt;pre&gt;$ sudo vi /var/trac/monzouliprojet/conf/trac.ini&lt;/pre&gt;


&lt;p&gt;Et ajoutez-y la section suivante (si elle n'existe pas) :&lt;/p&gt;


&lt;pre&gt;[components]
webadmin.* = enabled&lt;/pre&gt;


&lt;p&gt;Enregistrez le fichier et quittez.&lt;/p&gt;


&lt;h3&gt;Créer un hôte virtuel Apache&lt;/h3&gt;


&lt;p&gt;Nous devons rendre accessible par le web notre instance de Trac ainsi que le dépôt Subversion associé, par le biais d'un hôte virtuel apache dédié :&lt;/p&gt;


&lt;pre&gt;$ sudo vi /etc/apache2/sites-available/trac.mondomaine.org&lt;/pre&gt;


&lt;p&gt;On y écrit les paramètres de notre hôte dédié, en admettant que nous disposons du domaine &lt;code&gt;mondomaine.org&lt;/code&gt; nanti d'un sous-domaine &lt;code&gt;trac&lt;/code&gt; :&lt;/p&gt;


&lt;pre&gt;&amp;lt;VirtualHost *&amp;gt;
    ServerAdmin webmaster@mondomaine.org
    ServerName trac.mondomaine.org
    
    DocumentRoot /var/trac/monzouliprojet
    &amp;lt;Location /&amp;gt;
        SetHandler mod_python
        PythonHandler trac.web.modpython_frontend
        PythonOption TracEnv /var/trac/monzouliprojet
        PythonOption TracUriRoot /
        PythonPath &amp;quot;sys.path + ['/var/trac/monzouliprojet']&amp;quot;
    &amp;lt;/Location&amp;gt;

    ErrorLog  /var/log/apache2/error.trac.domaine.org.log
    CustomLog /var/log/apache2/access.trac.domaine.org.log combined
    
    &amp;lt;Location /svn&amp;gt;
        DAV svn
        SVNPath /var/svn/monzouliprojet
        AuthType Basic
        AuthName &amp;quot;Monzouliprojet Subversion repository&amp;quot;
        AuthUserFile /etc/apache2/dav_svn.passwd
        &amp;lt;LimitExcept GET PROPFIND OPTIONS REPORT&amp;gt; 
            Require valid-user
        &amp;lt;/LimitExcept&amp;gt;
    &amp;lt;/Location&amp;gt;
    
    &amp;lt;Location &amp;quot;/login&amp;quot;&amp;gt;
        AuthType Basic
        AuthName &amp;quot;Trac login&amp;quot;
        AuthUserFile /etc/apache2/dav_svn.passwd
        Require valid-user
    &amp;lt;/Location&amp;gt;

&amp;lt;/VirtualHost&amp;gt;&lt;/pre&gt;


&lt;p&gt;Vous devrez bien entendu enregistrer le domaine et le sous domaine dans votre fichier de configuration DNS, voire simplement dans votre fichier &lt;code&gt;/etc/hosts&lt;/code&gt; si vous disposez d'un service de gestion DNS décentralisé comme celui que propose la société &lt;a href=&quot;http://www.gandi.net&quot; hreflang=&quot;fr&quot;&gt;Gandi&lt;/a&gt;. Par exemple :&lt;/p&gt;


&lt;pre&gt;## Fichier /etc/hosts
127.0.0.1         localhost localhost.localdomain mamachine
123.124.125.126   trac.mondomaine.org&lt;/pre&gt;


&lt;p&gt;Nous utilisons &lt;code&gt;mod_python&lt;/code&gt; (précédemment installé), n'oublions pas de l'activer :&lt;/p&gt;


&lt;pre&gt;$ sudo a2enmod mod_python&lt;/pre&gt;


&lt;p&gt;Ceci fait, il nous reste à activer le nouvel hôte apache et à relancer ce dernier :&lt;/p&gt;


&lt;pre&gt;$ sudo a2ensite trac.mondomaine.org
$ sudo /etc/init.d/apache2 restart&lt;/pre&gt;


&lt;p&gt;Pour vérifier que tout s'est déroulé correctement, faites pointer votre navigateur préféré vers l'adresse &lt;code&gt;trac.mondomaine.org&lt;/code&gt;, vous devriez accéder sans encombres à votre instance nouvellement créée. Vous pouvez vous logguer en cliquant sur le lien &lt;em&gt;Login&lt;/em&gt; &lt;sup&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2006/09/05/489-installer-et-configurer-apache2-trac-et-subversion-sur-ubuntu#pnote-785-7&quot; id=&quot;rev-pnote-785-7&quot;&gt;7&lt;/a&gt;]&lt;/sup&gt; et en fournissant les paramètres d'accès utilisateur que vous avez définis précédemment. Si vous vous logguez en administrateur Trac, vous devriez disposer du menu &lt;strong&gt;&lt;em&gt;Admin&lt;/em&gt;&lt;/strong&gt; donnant accès à l'extension WebAdmin où vous pourrez ajuster les paramètres de votre instance aux petits oignons.&lt;/p&gt;


&lt;p&gt;Côté subversion, vous pouvez effectuer un checkout de votre projet de cette façon :&lt;/p&gt;


&lt;pre&gt;$ svn co http://trac.mondomaine.org/svn/trunk/ .&lt;/pre&gt;


&lt;p&gt;Un commit nécessitera cependant l'authentification ; vous pourrez forcer le nom d'utilisateur à utiliser :&lt;/p&gt;


&lt;pre&gt;$ svn commit -m &amp;quot;test de commit&amp;quot; main/test/toto.txt --username mainteneur&lt;/pre&gt;


&lt;h3&gt;Sources et références&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.destination-linux.org/Installer-Subversion-et-Trac&quot; hreflang=&quot;fr&quot;&gt;Installer Subversion et Trac&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.destination-linux.org/Trac-definition-des-politiques-d-acces-et-de-contribution&quot; hreflang=&quot;fr&quot;&gt;Trac : définition des politiques d’accès et de contribution&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://biologeek.com/journal/index.php/installer-un-depot-subversion-sous-ubuntu&quot; hreflang=&quot;fr&quot;&gt;Installer un dépôt Subversion sous Ubuntu&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://trac.edgewall.org/wiki/TracOnUbuntu&quot; hreflang=&quot;fr&quot;&gt;TracOnUbuntu&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;footnotes&quot;&gt;&lt;h4&gt;Notes&lt;/h4&gt;
&lt;p&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2006/09/05/489-installer-et-configurer-apache2-trac-et-subversion-sur-ubuntu#rev-pnote-785-1&quot; id=&quot;pnote-785-1&quot;&gt;1&lt;/a&gt;] Y'a sans doûte mieux, plus simple, plus rapide, plus puissant, blah blah blah... le formulaire d'ajout de commentaire vous attend avec fébrilité.&lt;/p&gt;
&lt;p&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2006/09/05/489-installer-et-configurer-apache2-trac-et-subversion-sur-ubuntu#rev-pnote-785-2&quot; id=&quot;pnote-785-2&quot;&gt;2&lt;/a&gt;] Ceux qui lorgnent sur la version 0.10 devront l'installer à la main. That's life.&lt;/p&gt;
&lt;p&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2006/09/05/489-installer-et-configurer-apache2-trac-et-subversion-sur-ubuntu#rev-pnote-785-3&quot; id=&quot;pnote-785-3&quot;&gt;3&lt;/a&gt;] Pensez à remplacer ce chemin par celui que vous préférez dans le reste des exemples de ce tutoriel &lt;img src=&quot;/blog/themes/battlestar/smilies/wink.gif&quot; alt=&quot;;)&quot; class=&quot;smiley&quot; /&gt;&lt;/p&gt;
&lt;p&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2006/09/05/489-installer-et-configurer-apache2-trac-et-subversion-sur-ubuntu#rev-pnote-785-4&quot; id=&quot;pnote-785-4&quot;&gt;4&lt;/a&gt;] Notez que si ce répertoire n'existe pas, le script tentera de le créer pour vous.&lt;/p&gt;
&lt;p&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2006/09/05/489-installer-et-configurer-apache2-trac-et-subversion-sur-ubuntu#rev-pnote-785-5&quot; id=&quot;pnote-785-5&quot;&gt;5&lt;/a&gt;] Notez également que mon script vous proposera de lancer le script adéquat une fois le projet subversion correctement créé.&lt;/p&gt;
&lt;p&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2006/09/05/489-installer-et-configurer-apache2-trac-et-subversion-sur-ubuntu#rev-pnote-785-6&quot; id=&quot;pnote-785-6&quot;&gt;6&lt;/a&gt;] Vous pouvez stocker ce fichier sensible où bon vous semble mais par pitié, &lt;strong&gt;pas derrière votre racine web&lt;/strong&gt; et de préférence le rendre accessible en écriture par le seul utilisateur &lt;code&gt;root&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;[&lt;a href=&quot;http://prendreuncafe.com/blog/post/2006/09/05/489-installer-et-configurer-apache2-trac-et-subversion-sur-ubuntu#rev-pnote-785-7&quot; id=&quot;pnote-785-7&quot;&gt;7&lt;/a&gt;] Wow !&lt;/p&gt;&lt;/div&gt;&lt;hr/&gt;&lt;p style=&quot;margin:.5em 0;padding:.5em;border:1px solid #333;background:#eee;color:#222&quot;&gt;&lt;small&gt;Ce billet intitulé &lt;a href=&quot;http://prendreuncafe.com/blog/post/2006/09/05/489-installer-et-configurer-apache2-trac-et-subversion-sur-ubuntu&quot;&gt;Installer et configurer Apache2, Trac et Subversion sur Ubuntu&lt;/a&gt; a été rédigé par &lt;a href=&quot;http://prendreuncafe.com/cv&quot;&gt;Nicolas Perriault&lt;/a&gt; et publié sur le blog &lt;a href=&quot;http://prendreuncafe.com/blog/&quot;&gt;Prendre un Café&lt;/a&gt; sous licence &lt;a href=&quot;http://creativecommons.org/licenses/by-nc-sa/2.5/&quot;&gt;Creative Commons BY-NC-SA&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;</description>
    
    
    
      </item>
    
</channel>
</rss>

