website diff devel/forge.html @ rev 18

Added Fonts to Handbook (en) and typos
author Paul Issot <paul@slitaz.org>
date Wed Apr 09 21:58:38 2008 +0000 (2008-04-09)
parents
children be880a5d53d3
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/devel/forge.html	Wed Apr 09 21:58:38 2008 +0000
     1.3 @@ -0,0 +1,278 @@
     1.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
     1.5 +    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     1.6 +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
     1.7 +<head>
     1.8 +	<title>SliTaz - Forge</title>
     1.9 +	<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
    1.10 +	<meta name="description" content="Développement de SliTaz GNU/Linux" />
    1.11 +	<meta name="keywords" lang="fr" content="developpement slitaz developer GNU Linux" />
    1.12 +	<meta name="robots" content="index, follow, all" />
    1.13 +	<meta name="revisit-after" content="7 days" />
    1.14 +	<meta name="expires" content="never" />
    1.15 +	<meta name="modified" content="2008-01-30 11:00:00" />
    1.16 +	<meta name="author" content="Christophe Lincoln"/>
    1.17 +	<meta name="publisher" content="www.slitaz.org" />
    1.18 +	<link rel="shortcut icon" href="../favicon.ico" />
    1.19 +	<link rel="stylesheet"  type="text/css" href="../slitaz.css" />
    1.20 +</head>
    1.21 +<body bgcolor="#ffffff">
    1.22 +
    1.23 +<!-- Header -->
    1.24 +<div id="header">
    1.25 +	<a name="top"></a>
    1.26 +<!-- Access -->
    1.27 +<div id="access">
    1.28 +	<a href="#content" title="Aller au contenu de la page">Contenu</a> |
    1.29 +    <a href="../en/" title="English Web site main page">English</a>
    1.30 +</div>
    1.31 +	<a href="http://www.slitaz.org/"><img id="logo"
    1.32 +	src="../pics/website/logo.png" title="www.slitaz.org" alt="www.slitaz.org"
    1.33 +	style="border: 0px solid ; width: 200px; height: 74px;" /></a>
    1.34 +	<p id="titre">#!/GNU/Linux</p>
    1.35 +</div>
    1.36 +
    1.37 +<!-- Navigation menu -->
    1.38 +<div id="nav">
    1.39 +<div id="nav_top"></div>
    1.40 +	<ul>
    1.41 +		<li><a href="../about/" title="Informations au sujet du projet SliTaz">A propos du projet</a></li>
    1.42 +		<li><a href="../get/" title="Téléchargements - LiveCD et sous projets">Obtenir SliTaz</a></li>
    1.43 +		<li><a href="../doc/" title="Handbook, Cookbook et manuels">Documentation</a></li>
    1.44 +		<li><a href="../packages/" title="Paquets logiciels disponibles">Paquets</a></li>
    1.45 +		<li><a href="../mailing-list.html" title="Support, contact et collaboration">Liste de discussion</a></li>
    1.46 +		<li><a href="../devel/" title="Le coin du développeur">Développement</a></li>
    1.47 +		<li><a href="../artwork/" title="Artwork, couleurs et images">Art &amp; graphisme</a></li>
    1.48 +		<li><a href="../search.html" title="Rechercher des infos et/ou de la doc">Recherche</a></li>
    1.49 +		<li><a href="../sitemap.html" title="Vue globale du site web">Plan du site</a></li>
    1.50 +		<li><a href="http://forum.slitaz.org/" title="Forum d'aide et support">Forum</a></li>
    1.51 +	</ul>
    1.52 +<div id="nav_bottom">
    1.53 +<div id="nav_bottom_img"></div>
    1.54 +</div>
    1.55 +</div>
    1.56 +
    1.57 +<!-- Content top. -->
    1.58 +<div id="content_top">
    1.59 +<div class="top_left"></div>
    1.60 +<div class="top_right"></div>
    1.61 +</div>
    1.62 +
    1.63 +<!-- Content -->
    1.64 +<div id="content">
    1.65 +<a name="content"></a>
    1.66 +
    1.67 +<h1><font color="#3E1220">Forge</font></h1>
    1.68 +
    1.69 +<h2><font color="#DF8F06">Gestion collaborative du développement</font></h2>
    1.70 +
    1.71 +<ul>
    1.72 +	<li><a href="#repos">Dépôts Mercurial.</a></li>
    1.73 +	<li><a href="#pkgs">Paquets tazpkg.</a></li>
    1.74 +	<li><a href="#site">Gestion du site Web et des livres.</a></li>
    1.75 +	<li><a href="guidelines.html">Guidelines.</a></li>
    1.76 +</ul>
    1.77 +
    1.78 +<p>
    1.79 +Le projet SliTaz dispose de divers moyens pour gérer le travail des
    1.80 +développeurs et collaborer. Un système de gestion de révision avec Mercurial
    1.81 +(Hg), des modules de synchronisations avec Rsync, de la documentation, une 
    1.82 +<a href="../mailing-list.html">liste de discussion</a> et un canal IRC. Tous
    1.83 +les développeurs sont inscrits sur la liste, c'est le moyen de collaboration
    1.84 +principal et privilégié.
    1.85 +</p>
    1.86 +
    1.87 +<a name="repos"></a>
    1.88 +<h3>Dépôts Mercurial</h3>
    1.89 +<p>
    1.90 +Tous les sous projets tels que Tazpkg, Tazwok ou Tazlito ont leurs propres 
    1.91 +dépôts Hg sur le serveur du projet, tout comme le wok. Les développeurs ont
    1.92 +un compte et des droits en écriture afin de pouvoir envoyer leurs recettes,
    1.93 +mises à jour ou modifications. Il est bien sûr possible de demander la création  
    1.94 +d'un nouveau dépôt pour collaborer sur un nouveau sous projet lié à SliTaz.
    1.95 +A noter qu'il y a 2 domaines : <a href="http://hg.slitaz.org/">hg.slitaz.org</a>
    1.96 +est public et <code>repos.slitaz.org</code> nécessite authentification, c'est 
    1.97 +a dire que vous pouvez cloner hg.slitaz.org mais pas y pousser vos changements 
    1.98 +ou fichiers.
    1.99 +</p>
   1.100 +<h4>~/.hgrc</h4>
   1.101 +<p>
   1.102 +Mercurial utilise un fichier caché <code>~./hgrc</code> permettant de 
   1.103 +spécifier son nom d'utilisateur. Il faut mettre votre nom et adresse mail pour
   1.104 +qu'on sache qui a modifié quoi. Et attention à ne pas être <em>root</em> pour
   1.105 +pousser vos modifications. Exemple :
   1.106 +</p>
   1.107 +<pre class="script">
   1.108 +[ui]
   1.109 +username = Prénom Nom &lt;you@example.org&gt;
   1.110 +</pre>
   1.111 +<h4>Cloner, modifier, commiter et pousser</h4>
   1.112 +<p>
   1.113 +Vous avez le choix de cloner anonymement via hg.slitaz.org ou directement avec
   1.114 +votre login et mot de passe. Pour cloner un dépôt tel que le wok :
   1.115 +</p>
   1.116 +<pre>
   1.117 + $ hg clone http://repos.slitaz.org/wok/
   1.118 +</pre>
   1.119 +<p>
   1.120 +Copier, créer, modifier des recettes ou des fichiers dans <code>stuff</code>. 
   1.121 +Avant de pouvoir pousser vos modifs il faut les additionner à votre dépôt 
   1.122 +local et les commiter. A noter que la commande <code>status</code> permet de 
   1.123 +savoir quels fichiers ont été modifiés :
   1.124 +</p>
   1.125 +<pre>
   1.126 + $ cd wok
   1.127 + $ hg status
   1.128 + $ hg add
   1.129 + $ hg commit
   1.130 +</pre>
   1.131 +<p>
   1.132 +La commande commit va ouvrir l'éditeur de texte Nano pour écrire le message
   1.133 +déstiné aux logs (Ctrl + X pour enregistrer et quitter). Vous pouvez éviter
   1.134 +Nano en utilisant l'option : <code>-m "Meassage"</code>. And please, 
   1.135 +messages in English if possible :
   1.136 +</p>
   1.137 +<pre>
   1.138 + $ hg commit -m "Message for Mercurial log"
   1.139 +</pre>
   1.140 +<p>
   1.141 +Une fois que tout est prêt, vous pouvez encore utiliser la commande
   1.142 +<code>log</code> pour voir ce qui va être affiché sur l'interface web. Pour 
   1.143 +pousser vos changements c'est <code>push</code> :
   1.144 +</p>
   1.145 +<pre>
   1.146 + $ hg log
   1.147 + $ hg push
   1.148 +</pre>
   1.149 +<p>
   1.150 +Si vous avez cloné depuis hg.slitaz.org il faut alors pousser en spécifiant
   1.151 +le bon URL :
   1.152 +</p>
   1.153 +<pre>
   1.154 + $ hg push http://repos.slitaz.org/wok/
   1.155 +</pre>
   1.156 +<h4>Mettre à jour un wok local</h4>
   1.157 +<p>
   1.158 +Pour mettre à jour votre wok local avec celui du serveur (<em>pull</em> pour
   1.159 +tirer les changements) :
   1.160 +</p>
   1.161 +<pre>
   1.162 + $ hg pull
   1.163 + $ hg update
   1.164 +</pre>
   1.165 +<h4>Commande utiles</h4>
   1.166 +<p>
   1.167 +Des commandes hg qui peuvent servir.
   1.168 +</p>
   1.169 +<ul>
   1.170 +	<li><code>hg help</code> : Affiche la liste complète des commandes.</li>
   1.171 +	<li><code>hg rollback</code> : Annule la dernière action exécutée (commit,
   1.172 +	pull, push).</li>
   1.173 +	<li><code>hg log &lt;paquet&gt;</code> : Affiche les log pour un paquet.</li>
   1.174 +	<li><code>hg head</code> : Affiche le dernier log.</li>
   1.175 +</ul>
   1.176 +
   1.177 +<a name="pkgs"></a>
   1.178 +<h3>Paquets tazpkg</h3>
   1.179 +<p>
   1.180 +Les paquets tazpkg de SliTaz sont créer automatiquement via Tazwok et les
   1.181 +recettes contenues dans le wok, <a href="../doc/cookbook/">le Cookbook</a>
   1.182 +décrit <a href="../doc/cookbook/wok-tools.html">l'utilisation des outils SliTaz</a> 
   1.183 +et le format des <a href="../doc/cookbook/receipts.html">recettes</a>,
   1.184 +c'est sans doutes par un petit peu de lecture qu'il faut commencer.
   1.185 +</p>
   1.186 +<p>
   1.187 +Au niveau du choix des paquets, l'idée est de proposer un paquet par tâche ou 
   1.188 +fonctionnalités, c'est à dire pas (trop) de doublons et de trouver 
   1.189 +l'application la plus légère dans son domaine. A noter que les paquets actuels
   1.190 +ne sont pas figés, si vous trouvez une alternative à un paquet existant, étant
   1.191 +plus légère, ayant plus de fonctionnalités ou soyant plus <em>sexy</em> pour
   1.192 +quelques Ko supplémentaires, vous pouvez la proposer sur la liste. Une 
   1.193 +attention particulière est portée aux paquets destinés au LiveCD, strip,
   1.194 +suppression de tout ce qui est inutile, dépendances et options de compilation.
   1.195 +En général, les paquets candidats pour le corps du LiveCD sont discutés sur
   1.196 +la liste.
   1.197 +</p>
   1.198 +<p>
   1.199 +Avant de commencer à compiler et créer des paquets pour SliTaz assurez-vous 
   1.200 +qu'une recettes n'existe pas dans le wok indigest disponible sur le miroir
   1.201 +principale de SliTaz. N'oubliez pas non plus que les membres de la liste sont
   1.202 +là pour vous aider et que <a href="../doc/cookbook/wok-tools.html"
   1.203 +	>la documentation du wok et des outils</a> existe pour bien commencer.
   1.204 +</p>
   1.205 +
   1.206 +<a name="site"></a>
   1.207 +<h3>Gestion du site Web et des livres</h3>
   1.208 +<p>
   1.209 +La gestion du site et des livres (Handbook et Cookbook) est faites via un
   1.210 +modules Rsync, diff et patch et la liste de discussion. Rsync est un outil de 
   1.211 +sauvegarde incrémentale, utilisant un algorithme ultra rapide. Il permet de 
   1.212 +transférer, synchroniser ou sauvegarder des données en local ou en réseau. 
   1.213 +L'utilitaire <code>diff</code> est utilisés pour envoyer sur la liste des
   1.214 +fichiers contenant uniquement les modifications et <code>patch</code> pour
   1.215 +appliquer les modifications au pages originales.
   1.216 +</p>
   1.217 +<p>
   1.218 +Vous pouver synchroniser le site et les livres graphiquement avec Grsync ou via
   1.219 +la ligne de commandes. Pour rapatrier une première fois ou synchroniser le site
   1.220 +dans un répertoire <code>/home/hacker/Public/slitaz/site</code> et cela depuis 
   1.221 +<code>rsync://slitaz.org/site</code> :
   1.222 +</p>
   1.223 +<pre>
   1.224 + $ rsync -r -t -p -v \
   1.225 +       --progress --delete \
   1.226 +       rsync://slitaz.org/site /home/hacker/Public/slitaz/site
   1.227 +</pre>
   1.228 +<h4>Diff et patch</h4>
   1.229 +<p>
   1.230 +Les utilitaires <code>diff</code> et <code>patch</code> sont des outils en
   1.231 +ligne de commande permettant de créer et d'appliquer un fichier contenant
   1.232 +les différences entre deux fichiers. Cette technique est souvent utilisée
   1.233 +pour collaborer et permet d'extraire clairement les modifications apportée
   1.234 +au fichier original. Pour créer un fichier <code>diff</code> lisible par
   1.235 +les humains dans un simple éditeur de texte, il faut utiliser l'option
   1.236 +<code>-u</code> en argument :
   1.237 +</p>
   1.238 +<pre>
   1.239 + $ diff -u file.orig file.new > file.diff
   1.240 +</pre>
   1.241 +<p>
   1.242 +Pour appliquer un patch :
   1.243 +</p>
   1.244 +<pre>
   1.245 + $ patch file.orig file.diff
   1.246 +</pre>
   1.247 +
   1.248 +<!-- End of content with round corner -->
   1.249 +</div>
   1.250 +<div id="content_bottom">
   1.251 +<div class="bottom_left"></div>
   1.252 +<div class="bottom_right"></div>
   1.253 +</div>
   1.254 +
   1.255 +<!-- Start of footer and copy notice -->
   1.256 +<div id="copy">
   1.257 +<p>
   1.258 +Dernière modification : 2008-01-01 12:00:00 -
   1.259 +<a href="#top">Haut de la page</a>
   1.260 +</p>
   1.261 +<p>
   1.262 +Copyright &copy; 2008 <a href="http://www.slitaz.org/">SliTaz</a> -
   1.263 +<a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License</a>
   1.264 +</p>
   1.265 +<!-- End of copy -->
   1.266 +</div>
   1.267 +
   1.268 +<!-- Bottom and logo's -->
   1.269 +<div id="bottom">
   1.270 +<p>
   1.271 +<a href="http://validator.w3.org/check?uri=referer"><img
   1.272 +   src="../pics/website/xhtml10.png" alt="Valid XHTML 1.0"
   1.273 +   title="Code validé XHTML 1.0"
   1.274 +   style="width: 80px; height: 15px;" /></a>
   1.275 +</p>
   1.276 +</div>
   1.277 +
   1.278 +</body>
   1.279 +</html>
   1.280 +
   1.281 +