source: presentations/trunk/GestionDeVersion/GestionDeVersion.html@ 319

Last change on this file since 319 was 265, checked in by garnier, 17 years ago

preparation avant remodelage repository

File size: 11.6 KB
Line 
1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" dir="ltr" lang="en-US">
3 <head profile="http://purl.org/net/uriprofile/">
4
5 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
6 <meta http-equiv="Content-Language" content="ja" />
7 <meta http-equiv="Content-Style-Type" content="text/css" />
8 <meta http-equiv="Content-Script-Type" content="text/javascript" />
9 <title>Gestion de version : Centralis&eacute;e ou d&eacute;centralis&eacute;e</title>
10
11 <link rev="made" href="mailto:perus@lal.in2p3.fr,garnier@lal.in2p3.fr" />
12 <link rel="Shortcut Icon" type="image/vnd.microsoft.icon" href="http://www.cybergarden.net/favicon.ico" />
13 <link rel="stylesheet" href="../../tags/Tools/v4/css/styles.css" type="text/css" media="screen, projection, tv, print" />
14 <link rel="stylesheet" href="../../tags/Tools/v4/Slidy/slidy-toc.css" type="text/css" media="screen, projection, print" />
15
16 <script src="../../tags/Tools/v4/Slidy/slidy.js" type="text/javascript"></script>
17 <script src="../../tags/Tools/v4/Slidy/slidy-toc.js" type="text/javascript"></script>
18 </head>
19
20 <body style="font-size: 18pt;">
21
22
23 <!-- Introduction [Start] -->
24
25<div class="slide" id="cover">
26
27 <div class="callout">
28 <p id="title">Gestion de version : Centralis&eacute;e ou d&eacute;centralis&eacute;e</p>
29 </div>
30 <!--<q></q>-->
31 <p id="author">Antoine P&eacute;rus, Laurent Garnier</p>
32 <br>
33 <p id="date">1 Octobre 2008<br></p>
34 <p id="event"><a href="http://indico.in2p3.fr/conferenceDisplay.py?confId=653">Journées Informatique IN2P3-IRFU</a>, Strasbourg</p>
35</div>
36
37<div class="slide">
38 <br>
39 <div class="callout">
40 <h2>Sommaire</h2>
41 <ol>
42 <li>Mod&egrave;le centralis&eacute;, points forts et faiblesses</li>
43
44 <li>Pourquoi un mod&egrave;le d&eacute;centralis&eacute; ?</li>
45 <li>Exemples :
46 <ol>
47 <li>Subversion 1.5</li>
48 <li>Git</li>
49 <li>Autres bazaard, darcs, mercurial, monotone ...</li>
50</li>
51 <li><a href="#(12)">Conclusion</a></li>
52 </ol>
53 </div>
54</div>
55
56
57
58<!-- Diapo -->
59 <div style="border-style: none; display: none; visibility: hidden; position: absolute;" class="slideLogo">
60
61 <h1>Doxygen : qu'est-ce que c'est ?</h1>
62 <ul class="incremental">
63 <li>
64 Syst&egrave;me de documentation pour programmes
65 <ul class="non-incremental">
66 <li>C++, Java, Objective-C, IDL</li>
67 <li>PHP, C#</li>
68 </ul>
69 </li>
70 <li>
71 G&eacute;n&egrave;re automatiquement :
72 <ul class="non-incremental">
73 <li>Html, Xml, Latex, Pdf, PS</li>
74 <li>man pages</li>
75 <li>graphe des d&eacute;pendances, des h&eacute;ritages</li>
76 </ul>
77 </li>
78 <li>Couplage fort entre la documentation et le code</li>
79 </ul>
80 </div>
81
82
83
84<!-- Diapo -->
85 <div style="border-style: none; display: none; visibility: hidden; position: absolute;" class="slideLogo">
86
87 <h1>Doxygen : comment ?</h1>
88
89 <p class="incremental" align="center">
90 <strong>... sans rien faire ;-)</strong>
91 </p>
92
93 <ul class="incremental">
94 <li>Exemple :
95 <ul class="non-incremental">
96 <li>lien <a href="http://ens.lal.in2p3.fr/current/DocDrawQt/html/index.html">DrawQt</a> du menu principal</li>
97 </ul>
98 </li>
99 <li>
100 G&eacute;n&egrave;re automatiquement la documentation
101 <ul class="incremental">
102 <li>en s'appuyant sur un fichier de configuration,<br />
103 qu'il est capable de g&eacute;n&eacute;rer sous forme de
104 template
105 <pre>
106
107 $&gt; doxygen -g configFile
108 </pre>
109 </li>
110 <li>en analysant le code</li>
111 <li>en analysant les commentaires plac&eacute;s dans le code, selon un format sp&eacute;cifique</li>
112 </ul>
113 </li>
114 </ul>
115
116 </div>
117
118
119
120<!-- Diapo -->
121 <div style="border-style: none; display: none; visibility: hidden; position: absolute;" class="slideLogo">
122
123 <h1>Doxygen : 1&egrave;re bouff&eacute;e (1)</h1>
124
125 <ul>
126 <li>Au d&eacute;but de chaque fichier, juste apr&egrave;s les
127 instructions d'inclusion :<br />&nbsp;<br />
128 <pre>
129
130 #include &lt;iostream&gt;
131 #include &lt;string&gt;
132
133 /** @file nomDuFichier.ext
134 * @brief Une br&egrave;ve description du fichier.
135 *
136 * Une description plus compl&egrave;te du fichier.
137 * Probablement sur plusieurs lignes.
138 */
139 </pre>
140 </li>
141 </ul>
142
143 </div>
144
145
146
147<!-- Diapo -->
148 <div style="border-style: none; display: none; visibility: hidden; position: absolute;" class="slideLogo">
149
150 <h1>Doxygen : 1&egrave;re bouff&eacute;e (2)</h1>
151
152 <ul>
153 <li>Juste avant chaque classe :<br />&nbsp;<br />
154 <pre>
155
156 /** @brief Une br&egrave;ve description de maClasse.
157 *
158 * Une description plus compl&egrave;te de maClasse.
159 * Probablement sur plusieurs lignes.
160 */
161 class maClass {
162 ...
163 }
164 </pre>
165 </li>
166 </ul>
167
168 </div>
169
170
171
172<!-- Diapo -->
173 <div style="border-style: none; display: none; visibility: hidden; position: absolute;" class="slideLogo">
174
175 <h1>Doxygen : 1&egrave;re bouff&eacute;e (3)</h1>
176
177 <ul>
178 <li>Juste avant chaque m&eacute;thode :<br />&nbsp;<br />
179 <pre>
180
181 /** @brief Une br&egrave;ve description de maMethode.
182 *
183 * Une description plus compl&egrave;te de maMethode.
184 * Probablement sur plusieurs lignes.
185 * @param unArgument Une br&egrave;ve description de unArgument.
186 * @return Une br&egrave;ve description de ce que retourne
187 * maMethode.
188 */
189 std::string maMethode( std::string unArgument );
190 </pre>
191 </li>
192 </ul>
193 </div>
194
195
196
197<!-- Diapo -->
198 <div style="border-style: none; display: none; visibility: hidden; position: absolute;" class="slideLogo">
199
200 <h1>Doxygen : 1&egrave;re bouff&eacute;e (4)</h1>
201
202 <ul>
203 <li>Juste avant chaque variable :<br />&nbsp;<br />
204 <pre>
205
206 /** @brief Une br&egrave;ve description de maVariable.
207 *
208 * Une description plus compl&egrave;te de maVariable.
209 * Probablement sur plusieurs lignes.
210 */
211 std::string maVariable;
212 </pre>
213 </li>
214 </ul>
215
216 </div>
217
218
219
220<!-- Diapo -->
221 <div style="border-style: none; display: none; visibility: hidden; position: absolute;" class="slideLogo">
222
223 <h1>Doxygen : en apn&eacute;e (1)</h1>
224
225 <ul>
226 <li>Au d&eacute;but de chaque fichier, juste apr&egrave;s les instructions d'inclusion :<br />&nbsp;<br />
227 <pre>
228
229 #include &lt;iostream&gt;
230 #include &lt;string&gt;
231
232 /** @file nomDuFichier.ext
233 * @brief Une br&egrave;ve description du fichier.
234 *
235 * Une description plus compl&egrave;te du fichier.
236 * Probablement sur plusieurs lignes.
237 *
238 * &lt;strong&gt;Exemple&lt;/strong&gt;
239 * &lt;code&gt;Status maFonction();&lt;/code&gt;
240 *
241 * @author Leroi Arthur
242 */
243 </pre>
244 </li>
245 </ul>
246
247 </div>
248
249
250
251<!-- Diapo -->
252 <div style="border-style: none; display: none; visibility: hidden; position: absolute;" class="slideLogo">
253
254 <h1>Doxygen : en apn&eacute;e (2)</h1>
255
256 <ul>
257 <li>Juste avant chaque classe :<br />&nbsp;<br />
258 <pre>
259
260 /** @brief Une br&egrave;ve description de maClasse.
261 *
262 * Une description plus compl&egrave;te de maClasse.
263 * Probablement sur plusieurs lignes.
264 * Une liste de caract&eacute;ristiques :
265 * - un item
266 * -# num&eacute;rot&eacute; 1
267 * -# num&eacute;rot&eacute; 2
268 * - un autre item
269 */
270 class maClass {
271 ...
272 }
273 </pre>
274 </li>
275 </ul>
276
277 </div>
278
279
280
281<!-- Diapo -->
282 <div style="border-style: none; display: none; visibility: hidden; position: absolute;" class="slideLogo">
283
284 <h1>Doxygen : en apn&eacute;e (3)</h1>
285
286 <ul>
287 <li>Juste avant chaque m&eacute;thode :<br />&nbsp;<br />
288 <pre>
289
290 /** @brief Une br&egrave;ve description de maMethode.
291 *
292 * Une description plus compl&egrave;te de maMethode.
293 * Probablement sur plusieurs lignes.
294 *
295 * @param unArgument Une br&egrave;ve description de unArgument.
296 * @return Une br&egrave;ve description de ce que retourne
297 * maMethode.
298 *
299 * @throws monException La raison et la description.
300 *
301 * @see #uneAutreMethode
302 * @see uneAutreClasse#uneAutreMethode
303 */
304 std::string maMethode( std::string unArgument );
305 </pre>
306 </li>
307 </ul>
308
309 </div>
310
311
312
313<!-- Diapo -->
314 <div style="border-style: none; display: none; visibility: hidden; position: absolute;" class="slideLogo">
315
316 <h1>Doxygen : syntaxe des liens</h1>
317
318 <table border="0" cellspacing="0" cellpadding="5">
319 <tr>
320 <td>@see <font color="red">package</font></td>
321 <td>Lien vers un <font color="red">package</font></td>
322 </tr>
323 <tr>
324 <td>@see <font color="red">classname</font></td>
325 <td>Lien vers <font color="red">classname</font> dans le package courant </td>
326 </tr>
327 <tr>
328 <td>@see <font color="red">package.classname</font></td>
329 <td>Lien vers <font color="red">classname dans un autre package</font> </td>
330 </tr>
331 <tr>
332 <td>@see <font color="red">#method</font></td>
333 <td>Lien vers <font color="red">method</font> dans la classe courante</td>
334 </tr>
335 <tr>
336 <td>@see <font color="red">classname#method</font></td>
337 <td>Lien vers <font color="red">method dans une autre classe</font> </td>
338 </tr>
339 <tr>
340 <td>@see <font color="red">#method(type)</font></td>
341 <td>Lien vers <font color="red">method avec l'argument
342 type</font></td>
343 </tr>
344 </table>
345
346 </div>
347
348
349
350<!-- Diapo -->
351 <div style="border-style: none; display: none; visibility: hidden; position: absolute;" class="slideLogo">
352
353 <h1>Doxygen : en apn&eacute;e (4)</h1>
354
355 <ul>
356 <li>Enrichir la page d'introduction :<br />&nbsp;<br />
357 <p align="center"><strong>@mainpage</strong></p>
358 <ul>
359 <li>dans un bloc de commentaire</li>
360 <li>par exemple, dans un fichier <em>mainpage.h</em></li>
361 </ul>
362 <pre>
363
364 /** @mainpage Le package Test
365 *
366 * @section intro Introduction
367 * ...
368 * @section install Proc&eacute;dure d'installation ...
369 * @subsection step_1 Premi&egrave;re &eacute;tape ...
370 * @subsection step_2 Deuxi&egrave;me &eacute;tape ...
371 * ...
372 * Le fichier &lt;a href="../../ChangeLog"&gt; ChangeLog&lt;/a&gt;
373 */
374 </pre>
375 </li>
376 </ul>
377
378 </div>
379
380
381
382<!-- Diapo -->
383 <div style="border-style: none; display: none; visibility: hidden; position: absolute;" class="slideLogo">
384
385 <h1>Utilisation avec CMT</h1>
386
387 <ul>
388 <li>Dans <em>&lt;package&gt;/&lt;version&gt;/cmt</em> :<br />&nbsp;<br />
389 <pre>
390 $&gt; cmt make doc
391 </pre>
392 </li>
393 <li>puis :<br />&nbsp;<br />
394 <pre>
395 $> open ../doc/html/index.html
396 </pre>
397
398 <p align="center"><br /><strong>... c'est tout ! ;-)</strong></p>
399 </div>
400
401
402
403<!-- Diapo -->
404<!-- Thank You [Start] -->
405 <div style="border-style: none; display: none; visibility: hidden; position: absolute;" class="slideLogo" id="thanks">
406 <br /><br />
407 <br /><br />
408 <br /><br />
409 <br /><br />
410 <center>Question(s) ?</center>
411 </div>
412
413
414 <!-- [End] -->
415
416 </body>
417</html>
Note: See TracBrowser for help on using the repository browser.