Florent Guilleux, Comit Rseau des Universits TutoJRES 01, Juin 2006
Gestion des diffusions (releases, correctifs de scurit, etc.) Dpendances multiples (bibliothques)
2 / 66
version
merge
BASE
branches
update HEAD
repository
conflict
check out
5 / 66
trunk/
svn checkout
svn commit
svn commit
+ ce qui sert au dploiement de lappli (scripts dinstallation par exemple) la documentation du produit
12 / 66
13 / 66
trunk/
svn checkout
svn add
svn commit
alice$work > svn delete http://subversion.example.com/myProject/trunk/file2.pl alice$work >> svn commit myProject/file3.pl alice$work svn add myProject/file3.pl
14 / 66
svn delete
svn add
3
4 5
16 / 66
18 / 66
trunk/
svn checkout
PREV
COMMITED
BASE
alice$myProject svn diff file1.pl file1.pl alice$myProject > svn diff diff r>PREV:COMMITED file1.pl alice$myProject > svn r BASE:HEAD
20 / 66
21 / 66
trunk/
svn checkout
svn commit
svn revert
22 / 66
trunk/
215
216
418
419
svn checkout
svn commit
svn merge
svn checkout
svn commit
Copie de travail dAlice bob$myProject File1.pl bob$myProject > > svn svn commit update File1.pl
svn checkout
svn commit
Sending File1.pl G File1.pl svn: commit failed (details follow): Updated to revision 2 svn: Out of date: /myProject/File1.pl in transaction 4
26 / 66
svn update
svn commit
Zro Un Deux Trois QUATRE
27 / 66
svn update
File1.pl.mine
File1.pl.r2 File1.pl.r1
28 / 66
trunk/
215
345
418
482
tiquettes
REL-0.9
REL-1.1a
32 / 66
345
418
482
tags/REL-0.9 tags/
346
tags/REL-1.1a
483
svn copy r 345 http://subversion.example.com/myProject/trunk svn export http://subversion.example.com/myProject/tags/REL-0.9 svn mkdir http://subversion.example.com/myProject/tags http://subversion.example.com/myProject/tags/REL-O.9
33 / 66
si ncessaire utiliser un script associ parfois des exceptions, par exemple une tiquette latest-build
35 / 66
TRY-new_cache
Branche dexprimentation
36 / 66
trunk/
215
345
418
482
branches/RB-0.8
216
217
314
tags/ REL-0.8
315
svn copy http://subversion.example.com/myProject/trunk svn copy http://subversion.example.com/myProject/branches/RB-O.8 svn co http://subversion.example.com/myProject/branches/RB-0.8 http://subversion.example.com/myProject/branches/RB-0.8 http://subversion.example.com/myProject/tags/REL-0.8
37 / 66
Le quotidien du subversif
ajout de fonctionnalits correction de bug, application dans les branches prparation de release fusion de branches
2. Corriger le bogue, tester le correctif 3. Enregistrer la correction dans le rfrentiel svn commit m correction du bogue #735
[] Committed revision 220
myProject/
trunk/
doc/ src/
common/
svn:externals doc/ lib/
50 / 66
Un script associ est une action lie un vnement enrichit le comportement de Subversion
53 / 66
API
C, C++, Python, JAVA, Perl, Ruby, C#, PHP
https://
file://
61 / 66
Conclusion
63 / 66
64 / 66
Rfrences
Site : http://subversion.tigris.org,
Doc officielle : http://svnbook.red-bean.com Gestion de projet avec Subversion (OReilly) Pragmatic Version Control (Pragmatic Bookshelf)
65 / 66