website view fr/devel/forge.html @ rev 452

FR: Fixed typos fr
author Pierre ROMILLON <pierre.romillon@slitaz.org>
date Fri May 08 22:35:19 2009 +0200 (2009-05-08)
parents 017b8a9eac98
children c118fc57c08d
line source
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
4 <head>
5 <title>SliTaz - Forge</title>
6 <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
7 <meta name="description" content="Développement de SliTaz GNU/Linux" />
8 <meta name="keywords" lang="fr" content="developpement slitaz developer GNU Linux" />
9 <meta name="robots" content="index, follow, all" />
10 <meta name="revisit-after" content="7 days" />
11 <meta name="expires" content="never" />
12 <meta name="modified" content="2009-16-01 16:00:00" />
13 <meta name="author" content="Christophe Lincoln"/>
14 <meta name="publisher" content="www.slitaz.org" />
15 <link rel="shortcut icon" href="../../favicon.ico" />
16 <link rel="stylesheet" type="text/css" href="../../slitaz.css" />
17 <link rel="Content" href="#content" />
18 </head>
19 <body bgcolor="#ffffff">
21 <!-- Header -->
22 <div id="header">
23 <a name="top"></a>
24 <!-- Access -->
25 <div id="access">
26 Language:
27 <a href="../../en/" title="English Web site main page">English</a>
28 </div>
29 <a href="http://www.slitaz.org/fr/"><img id="logo"
30 src="../../pics/website/logo.png" title="www.slitaz.org" alt="www.slitaz.org"
31 style="border: 0px solid ; width: 200px; height: 74px;" /></a>
32 <p id="titre">#!/GNU/Linux</p>
33 </div>
35 <!-- Navigation menu -->
36 <div id="nav">
37 <div id="nav_top"></div>
38 <!-- General -->
39 <ul>
40 <li><a href="../about/" title="Informations au sujet du projet SliTaz">A propos du projet</a></li>
41 <li><a href="../asso/" title="Infrastructure et services">Association</a></li>
42 <li><a href="../get/" title="Téléchargements - LiveCD et sous projets">Obtenir SliTaz</a></li>
43 <li><a href="../doc/" title="Handbook, Cookbook et manuels">Documentation</a></li>
44 <li><a href="../packages/" title="Paquets logiciels disponibles">Paquets</a></li>
45 <li><a href="../devel/" title="Le coin du développeur">Développement</a></li>
46 <li><a href="../artwork/" title="Artwork, couleurs et images">Art &amp; graphisme</a></li>
47 </ul>
48 <!-- Support -->
49 <ul>
50 <li><a href="http://forum.slitaz.org/" title="Forum d'aide et support">Forum de support</a></li>
51 <li><a href="../mailing-list.html" title="Support, contact et collaboration">Liste de discussion</a></li>
52 <li><a href="../search.html" title="Rechercher des infos et/ou de la doc">Recherche</a></li>
53 <li><a href="../sitemap.html" title="Vue globale du site web">Plan du site</a></li>
54 </ul>
55 <!-- Wiki and Labs -->
56 <ul>
57 <li><a href="http://wiki.slitaz.org/" title="Wiki collaboratif">Ressources Wiki</a></li>
58 <li><a href="http://labs.slitaz.org/" title="Gestion du projet">Laboratoires</a></li>
59 <li><a href="http://labs.slitaz.org/issues" title="Bug Tracking system">Suivi des Bugs</a></li>
60 </ul>
61 <div id="nav_bottom">
62 <div id="nav_bottom_img"></div>
63 </div>
64 </div>
66 <!-- Content top. -->
67 <div id="content_top">
68 <div class="top_left"></div>
69 <div class="top_right"></div>
70 </div>
72 <!-- Content -->
73 <div id="content">
74 <a name="content"></a>
76 <h1><font color="#3E1220">Forge</font></h1>
78 <h2><font color="#DF8F06">Gestion collaborative du développement</font></h2>
80 <ul>
81 <li><a href="#tank">Build host &amp; home.</a></li>
82 <li><a href="#repos">Dépôts Mercurial.</a></li>
83 <li><a href="#pkgs">Paquets tazpkg.</a></li>
84 <li><a href="#site">Gestion du site Web et des livres.</a></li>
85 <li><a href="guidelines.html">Guidelines.</a></li>
86 </ul>
88 <p>
89 Le projet SliTaz dispose de divers moyens pour gérer le travail des
90 développeurs et collaborer. Un système de gestion de révision avec Mercurial
91 (Hg), des modules de synchronisation avec Rsync, de la documentation, une
92 <a href="../mailing-list.html">liste de discussion</a> et un canal IRC. Tous
93 les développeurs sont inscrits sur la liste, c'est le moyen de collaboration
94 principal et privilégié.
95 </p>
97 <a name="tank"></a>
98 <h3>Tank - Build host &amp; home</h3>
99 <p>
100 Chaque contributeur peut avoir un compte sur le serveur principal du
101 projet, avec un accès sécurisé, de l'espace disque, un répertoire public
102 et tous les outils de développement. Les développeurs peuvent y compiler
103 leurs paquets et les mainteneurs du miroir s'occupent de la synchronisation.
104 Tank héberge aussi le site internet, le web boot et les dépôts Mercurial:
105 <a href="http://tank.slitaz.org/">tank.slitaz.org</a>
106 </p>
107 <p>
108 L'utilisation du build host est décrite dans le Cookbook:
109 <a href="../en/doc/cookbook/build-host.html">SliTaz Build Host (tank)</a>.
110 </p>
112 <a name="repos"></a>
113 <h3>Dépôts Mercurial</h3>
114 <p>
115 Tous les sous-projets tels que Tazpkg, Tazwok ou Tazlito ont leurs propres
116 dépôts Hg sur le serveur du projet, tout comme le wok. Les développeurs ont
117 un compte et des droits en écriture afin de pouvoir envoyer leurs recettes,
118 mises à jour ou modifications. Il est bien sûr possible de demander la création
119 d'un nouveau dépôt pour collaborer sur un nouveau sous-projet lié à SliTaz.
120 A noter qu'il y a 2 domaines : <a href="http://hg.slitaz.org/">hg.slitaz.org</a>
121 est public et <code>repos.slitaz.org</code> nécessite authentification, c'est-à-dire
122 que vous pouvez cloner hg.slitaz.org mais pas y pousser vos changements ou fichiers.
123 </p>
124 <h4>~/.hgrc</h4>
125 <p>
126 Mercurial utilise un fichier caché <code>~./hgrc</code> permettant de
127 spécifier son nom d'utilisateur. Il faut mettre votre nom et adresse mail pour
128 qu'on sache qui a modifié quoi. Et attention à ne pas être <em>root</em> pour
129 pousser vos modifications. Exemple :
130 </p>
131 <pre class="script">
132 [ui]
133 username = Prénom Nom &lt;you@example.org&gt;
134 </pre>
135 <h4>Cloner, modifier, commiter et pousser</h4>
136 <p>
137 Vous avez le choix de cloner anonymement via hg.slitaz.org ou directement avec
138 votre login et mot de passe. Pour cloner un dépôt tel que le wok :
139 </p>
140 <pre>
141 $ hg clone http://repos.slitaz.org/wok/
142 </pre>
143 <p>
144 Copier, créer, modifier des recettes ou des fichiers dans <code>stuff</code>.
145 Avant de pouvoir pousser vos modifs, il faut les additionner à votre dépôt
146 local et les commiter. A noter que la commande <code>status</code> permet de
147 savoir quels fichiers ont été modifiés :
148 </p>
149 <pre>
150 $ cd wok
151 $ hg status
152 $ hg add
153 $ hg commit
154 </pre>
155 <p>
156 La commande <code>commit</code> va ouvrir l'éditeur de texte Nano pour écrire le message
157 destiné aux logs (Ctrl + X pour enregistrer et quitter). Vous pouvez éviter
158 Nano en utilisant l'option : <code>-m "Message"</code>. And please,
159 messages in English if possible :
160 </p>
161 <pre>
162 $ hg commit -m "Message for Mercurial log"
163 </pre>
164 <p>
165 Une fois que tout est prêt, vous pouvez encore utiliser la commande
166 <code>log</code> pour voir ce qui va être affiché sur l'interface web. Pour
167 pousser vos changements c'est <code>push</code> :
168 </p>
169 <pre>
170 $ hg log
171 $ hg push
172 </pre>
173 <p>
174 Si vous avez cloné depuis hg.slitaz.org, il faut alors pousser en spécifiant
175 le bon URL :
176 </p>
177 <pre>
178 $ hg push http://repos.slitaz.org/wok/
179 </pre>
180 <h4>Mettre à jour un wok local</h4>
181 <p>
182 Pour mettre à jour votre wok local avec celui du serveur (<em>pull</em> pour
183 tirer les changements) :
184 </p>
185 <pre>
186 $ hg pull
187 $ hg update
188 </pre>
189 <h4>Commandes utiles</h4>
190 <p>
191 Des commandes hg qui peuvent servir.
192 </p>
193 <ul>
194 <li><code>hg help</code> : affiche la liste complète des commandes.</li>
195 <li><code>hg rollback</code> : annule la dernière action exécutée (commit,
196 pull, push).</li>
197 <li><code>hg log &lt;paquet&gt;</code> : affiche les logs pour un paquet.</li>
198 <li><code>hg head</code> : affiche le dernier log.</li>
199 </ul>
201 <a name="pkgs"></a>
202 <h3>Paquets tazpkg</h3>
203 <p>
204 Les paquets tazpkg de SliTaz sont créés automatiquement via Tazwok et les
205 recettes contenues dans le wok, <a href="../doc/cookbook/">le Cookbook</a>
206 décrit <a href="../doc/cookbook/wok-tools.html">l'utilisation des outils SliTaz</a>
207 et le format des <a href="../doc/cookbook/receipts.html">recettes</a>,
208 c'est sans doute par un petit peu de lecture qu'il faut commencer.
209 </p>
210 <p>
211 Concernant le choix des paquets, l'idée est de proposer un paquet par tâche ou
212 fonctionnalité, c'est à dire pas (trop) de doublons et de trouver
213 l'application la plus légère dans son domaine. A noter que les paquets actuels
214 ne sont pas figés, si vous trouvez une alternative à un paquet existant, étant
215 plus légère, ayant plus de fonctionnalités ou étant plus <em>sexy</em> pour
216 quelques Ko supplémentaires, vous pouvez la proposer sur la liste. Une
217 attention particulière est portée aux paquets destinés au LiveCD : strip,
218 suppression de tout ce qui est inutile, dépendances et options de compilation.
219 En général, les paquets candidats pour le corps du LiveCD sont discutés sur
220 la liste.
221 </p>
222 <p>
223 Avant de commencer à compiler et créer des paquets pour SliTaz, assurez-vous
224 qu'une recette n'existe pas dans le wok undigest, disponible sur le miroir
225 principal de SliTaz. N'oubliez pas non plus que les membres de la liste sont
226 là pour vous aider et que pour bien commencer, <a href="../doc/cookbook/wok-tools.html"
227 >la documentation du wok et des outils</a> existe.
228 </p>
230 <a name="site"></a>
231 <h3>Gestion du site Web et des livres</h3>
232 <p>
233 La gestion du site et des livres (Handbook et Cookbook) est faite via un
234 dépôt Mercurial, ce qui nous permet de traviller à plusieurs. Il faut
235 juste installer <code>mercurail</code> sur SliTaz et connaître les commandes
236 de base. Une fois le dépôt cloné vous avez une copie complète du site en
237 local pour commencer à travailler. Pour cloner le site web :
238 </p>
239 <pre>
240 $ hg clone http://hg.slitaz.org/website
241 </pre>
242 <p>
243 Si vous avez les droits :
244 </p>
245 <pre>
246 $ hg clone http://repos.slitaz.org/website
247 </pre>
248 <p>
249 Sur SliTaz vous pouvez installer le serveur web Lighttpd et mettre le
250 site dans votre répertoire ~/Public, cela permet de naviguer dans votre
251 copie locale via localhost/~user.
252 </p>
254 <h3>Diff et patch</h3>
255 <p>
256 Les utilitaires <code>diff</code> et <code>patch</code> sont des outils en
257 ligne de commande permettant de créer et d'appliquer un fichier contenant
258 les différences entre deux fichiers. Cette technique est souvent utilisée
259 pour collaborer et permet d'extraire clairement les modifications apportées
260 au fichier original. Pour créer un fichier <code>diff</code> lisible par
261 les humains dans un simple éditeur de texte, il faut utiliser l'option
262 <code>-u</code> en argument :
263 </p>
264 <pre>
265 $ diff -u file.orig file.new > file.diff
266 </pre>
267 <p>
268 Pour appliquer un patch :
269 </p>
270 <pre>
271 $ patch file.orig file.diff
272 </pre>
274 <!-- End of content with round corner -->
275 </div>
276 <div id="content_bottom">
277 <div class="bottom_left"></div>
278 <div class="bottom_right"></div>
279 </div>
281 <!-- Start of footer and copy notice -->
282 <div id="copy">
283 <p>
284 Dernière modification : 2009-20-03 03:00:00 -
285 <a href="#top">Haut de la page</a>
286 </p>
287 <p>
288 Copyright &copy; 2009 <a href="http://www.slitaz.org/">SliTaz</a> -
289 <a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License</a>
290 </p>
291 <!-- End of copy -->
292 </div>
294 <!-- Bottom and logo's -->
295 <div id="bottom">
296 <p>
297 <a href="http://validator.w3.org/check?uri=referer"><img
298 src="../../pics/website/xhtml10.png" alt="Valid XHTML 1.0"
299 title="Code validé XHTML 1.0"
300 style="width: 80px; height: 15px;" /></a>
301 </p>
302 </div>
304 </body>
305 </html>