0% ont trouvé ce document utile (0 vote)
198 vues24 pages

Guide Débutant TortoiseSVN

Ce document présente un tutoriel sur l'utilisation du logiciel TortoiseSVN. Il décrit les étapes d'installation, de configuration, les fonctionnalités de base comme la mise à jour et le commit, ainsi que des points plus avancés tels que la gestion des branches.

Transféré par

Mohamed Ali Ferjani
Copyright
© Attribution Non-Commercial (BY-NC)
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
198 vues24 pages

Guide Débutant TortoiseSVN

Ce document présente un tutoriel sur l'utilisation du logiciel TortoiseSVN. Il décrit les étapes d'installation, de configuration, les fonctionnalités de base comme la mise à jour et le commit, ainsi que des points plus avancés tels que la gestion des branches.

Transféré par

Mohamed Ali Ferjani
Copyright
© Attribution Non-Commercial (BY-NC)
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

KvinFardel

TutorielTortoiseSVN

03/07/09

TutorielTortoiseSVN

Sommaire

Introduction.................................................................................................................3
PrsentationdeTortoiseSVN.....................................................................................4
Installation...................................................................................................................5
ConfigurationdeTortoiseSVN..................................................................................6
UtilisationdeTortoiseSVN..........................................................................................7
1reutilisation:..........................................................................................................7
Misejour.................................................................................................................9
Commit......................................................................................................................9
Gestiond'unconflit..................................................................................................13
Utilisationavance.....................................................................................................16
Gestiondesbranches................................................................................................17
Recommandations...................................................................................................24

2/24

TutorielTortoiseSVN

Introduction

Cepetittutorielvavousapprendrelesbasesdel'[Link]
pointsneserontpasabordsoupasapprofondismaislasuitedecetutorielvousdevriezpouvoir
utiliserTortoiseSVNpourdvelopperunprojetencollaborationavecd'[Link]
lespartiesdecetutorielsontimportantessivousnesavezpasraliserl'uned'entreellen'esprezpas
voir l'efficacit de TortoiseSVN dans un gros projet. Ce tutoriel n'est pas long et reste
volontairementunrsumdescommandesutilespourl'utilisationqu'onenferadanslecadredu
[Link]:
[Link]
[Link]
certainepartielatraductionanglaisfranaisn'[Link]
paragraphesenanglais!!!
Pourtoutesremarquessurcepetittutoriel:
[Link]@[Link]

3/24

TutorielTortoiseSVN

PrsentationdeTortoiseSVN
TortoiseSVN est un client opensource gratuit pour le systme de contrle de version
Subversion.C'[Link]
[Link]
fichiersordinaire,saufqu'[Link]
permetdercuprerlesversionsprcdentesdevosfichiersetexaminerl'historiquedecommentet
quandvosdonnesontchang.C'estpourquoibeaucoupdepersonnespensentqueSubversionetles
systmesdecontrledeversionengnralsontunesortedemachineremonterletemps.
Quelques systmes de contrle de version sont aussi des systmes de gestion de
configuration logicielle (GCL). Ces systmes sont spcifiquement conus pour grer des
arborescencesdecodesourceetontbeaucoupdefonctionnalitsspcifiquesaudveloppementde
logiciel comme la comprhension de langages de programmation en natif, ou des outils
d'approvisionnement pour construire le logiciel. Subversion, cependant, n'est pas un de ces
systmes,c'estunsystmegnralquipeuttreutilispourgrer n'importequelle collectionde
fichiers,ycomprisducodesource.
Pourbiencomprendrel'utilitdesubversion(SVN)[Link]
que bob et la sont deux dveloppeurs d'un logiciel. Ces deux personnes vont travailler
[Link]
fautquelesdeuxpuissentutiliserlessourcesduprojetenmmetemps,lesmodifierenmmetemps
etsurtoutquelesmodificationsdel'unsoientapportesauxsourcesdel'[Link]
[Link].

Serveur
avec
lessources
Lire,crireet
modifierlessources

La

Bob

TortoiseSVNvadoncpermettreBobetLadelire,crire,etmodifierlessourcesmais
aussidegrerdiffrentesversionsdessources.

4/24

TutorielTortoiseSVN

Installation
TortoiseSVNfonctionnesurWindows(2000,XPouvista);pourdesversionsantrieursde
WindowsilfauttlchargeruneversiondeTortoiseinfrieurelaversion1.2.0.
L'installationdeTortoiseesttrssimple,unefoislefichierd'installationlancilfautsuivre
lestapesdel'assistant.
Attention : Il faut treadministrateur de la machine pour pouvoir installer Tortoise. Si
jamaisvousn'tespasadministrateurunmessaged'erreurvousl'indiqueradurantl'installation.
Alafindel'[Link]
pouvezconstaterqu'enralisantunclicdroitsurunrpertoire(dansvotreexplorateurWindows)un
nouveaumenuestapparu:

Sicemenun'apparaitpasalorsl'installationc'[Link]
allersurleFAQdusitesuivant:

[Link]

5/24

TutorielTortoiseSVN

ConfigurationdeTortoiseSVN.
[Link]
devezavoirenvotrepossessionl'adressedeceserveur.
Cetteadressepeutsetrouversousplusieursformesrsumesdansletableausuivant:
file://

Accsdirectaurfrentielsurdisquelocalourseau.

http://

AccsvialeprotocoleWebDAVunserveurApacheavecSubversion.

https://

Mmechoseque[Link]

svn://

AccsTCP/IPnonauthentifiviaunprotocolepersonnalisunserveursvnserve.

svn+ssh:// Accs TCP/IP authentifi, crypt via un protocole personnalis un serveur


svnserve

Cettemthoded'accsestspcifiparl'adressequevousfournil'administrateurduserveur.
C'est la seule configuration absolument ncessaire pour utiliser Tortoise. Les autres
configurationpeuventtrerglesdans:
cliquedroit
TortoiseSVN>Settings

6/24

TutorielTortoiseSVN

UtilisationdeTortoiseSVN
1reutilisation:
LorsdelapremireutilisationdeTortoisesurvotremachineilfauttoutd'abordrapatrier
l'intgralit des sources du serveur sur votre machine locale (on suppose que des versions
antrieuressontdjendptsurleserveur).Pourcefaire:
Clicdroitsurunrpertoirecrceteffet
SVNCheckout...
Lafentresuivantevas'ouvrir.

Dans le premier champs de cette fentre il faut renseigner l'adressedu rpertoire o se


[Link]'unedesformeexposesdansle
tableaudelapartieprcdentesuivitd'[Link]:
svn+ssh://nom_du_developpeur@[Link]/svnroot/sticsv69/trunk/
Danscetexemplenousvoyonsquelamthoded'accsestsvn+ssh://ensuiteilyalelogin
dudveloppeursurleserveursuivitde @,puisdel'adresseduserveuretdel'emplacementdu
rpertoireosetrouvelessourcesquel'onsouhaiterapatriersurnotremachine.
7/24

TutorielTortoiseSVN
Dans le second champs il faut remplir l'adresse du rpertoire o l'on veut rapatrier les
[Link]:
C:\DocumentsandSettings\kfardel\Bureau\mulcyber\
Ensuitelechampsdroulantquisuitindiquelaprofondeurducheckoutquel'[Link]
grosonindiquesionveutquelecheckoutsefassedanslerpertoireindiquerdanslechamps1
uniquementoudanslessousrpertoiresdurpertoireindiqudanslechamps,ouuniquementdans
lessousrpertoiresimmdiats.
Gnralementonmettralaprofondeurducheckoutenrcursifcomplet(fullyrecursive)carpourla
premireutilisationlemieuxestprobablementdercuprerlatotalitdessourcesd'unprojet(la
profondeurc'estcommentonvaparcourirlerpertoire,soitlerpertoireracineetc'esttoutsoitle
rpertoireracineetl'ensembledecessousrpertoireparexemple).Aprslibrevousd'utiliserla
profondeur que vous souhaitez. La dernire partie de la fentre indique la version que vous
souhaitezrcuprerduprojet.
Sivousactiverl'optionHEADrevisionvousrapatrierezladernireversionduprojet.
Si vous slectionnez Revision il vous faut indiquer quelle rvision vous souhaitez rapatrier.
Prenonsparexempleunprojetquel'[Link]
estsurleserveur(revision0).Bobrapatrieavecl'[Link]
quiviennentjusted'[Link]
quifaitqu'ilcrelaversion1(revision1).LLaarriveetveutelleaussitravaillersurleprojetmais
veutpartirduprojetdebaseavantqueBobnel'[Link]'optionRevision
etcritlenumrodelarevisionqu'ellesouhaitedanslechampsd'ct(iciceseralarevision0).
UncliquesurleboutonOKlanceralecheckoutaveclesoptionschoisies.
Durantlecheckoutvousverrezl'ensembledesoprationsralisesparTortoisependantle
checkout(unbonmoyendevoirsidesproblmesonteulieudurantlecheckout).Alafindu
checkoutquandvousavezfermlafentrevousvousapercevaitquelerpertoiresurlequelvous
[Link]'estbien
droul ! Ce petit symbole est rajout par Tortoise par dessus vos icnes Windows pour vous
indiquerl'tatdevotreversion.
AufuretmesuredevotreutilisationdeTortoisevousserezconfronterdiffrentsicnedansce
[Link]'entreeux:
Ceticnevoussignifiequevotreversionlocalestinchangeetjour
etqu'iln'yaaucunproblmevisible.
Ceticnevoussignifiequevousavezmodifivotreversionsurvotre
machineetquevousn'avezpasralisdecommitversleserveur.
Doncsid'autresutilisateursrapatrientdessourcessurleurmachine
ilsn'aurontpasvosmodifications.
Ceticne vous indiquequelefichier(ourpertoire)agnr un
[Link]
commentlesrsoudre.

8/24

TutorielTortoiseSVN
D'autresicnespeuventapparatrejevouslaisselesoindelesdcouvrirsurlesitedeTortoiseSVN:
[Link]
Donclafindecettetapevoustesenpossessiondessourcesduprogrammeprtlesutiliser.

Misejour
Pourmettrejourvossourcesilvousfautrcuprerlessources,ayanttmodifissurleserveur
[Link]
[Link]:
cliquedroitsurvotrerpertoiredetravail
SVNupdate
Unefentres'ouvrevousindiquantlesfichiersquionttmisjoursurvotremachine:

Sidurantcettemisejourdeserreursonttaffichesdanslefentrejevouslaisselirelesdeux
partiessuivantespourvousexpliquercommentlesrsoudre.

Commit
Une fois que vous aurez apport les modifications que vous souhaitiez (ou que vous deviez)
[Link]
s'[Link]'oprationsuivante:
9/24

TutorielTortoiseSVN
cliquedroitsurlerpertoirequel'onsouhaitemettrejoursurleserveur.
Commit
Unepremirefentrevas'ouvrir:

10/24

TutorielTortoiseSVN

Dans lepremierchampsilvousfautindiquerunmessage(cen'estpasobligatoire mais


fortementrecommand)quivapermettreauxautresdveloppeursdesavoirpourquoivousavezfait
[Link]
[Link]
[Link]'extensiondufichieretunecolonneindiquantlestatutdufichier.
Normalementsilefichierapourstatutmodifiedalorsilestcoch,cequisignifiequ'ilseramis
jour sur le [Link]'apas tmodifientrevotrederniremise joursur votre
machineetlamisejourquevousralisezmaintenant,entoutelogique,iln'estpascoch.C'est
inutiledelemettrejoursurleserveur.
Avantdelancerlecommitpensertoutdemmevrifierquelechemind'accsauserveur(indiqu
enhautdelafentrelasuitedecommitto:)soitexact.

EncliquantsurOKunefentrevas'ouvrirvousindiquantlesfichiersquionttmisjoursurle
serveur:
11/24

TutorielTortoiseSVN

Danscetexempletouts'[Link]
sourcesquevousavezsurvotremachine.
Maisdurantcecommitilpeutsecrerdesconflits.C'estlorsquelessourcesonttmodifis
parunautreutilisateurentrelemomentovousavezralisl'update(oucheckout)etlemomento
[Link](ouvertelorsquevousavez
lanclecommit)vousl'indiquera.

Pour rsoudre ce conflit ralisez tout d'abord un update sur vos sources, puis faites un
nouveaucommit.L'updatesurvossourcesn'enlverapaslesmodificationsquevousavezapport
12/24

TutorielTortoiseSVN
[Link]'updateaucuneerreurn'estdtectealorsc'estqueleconflitestrsolut.
Parcontresidurantl'updatevousobtenezunmessagedelasorte:

AlorscelasignifiequeTortoisen'[Link]
gnralementdufaitquelammeligneestmodifiedans lefichierquiposeproblmesurle
[Link]
rsoudremanuellementleproblme.

Gestiond'unconflit
[Link]
falloircomparerlefichiersurvotremachine,lefichiersurleserveuretlefichierquevousallez
envoyersurleserveur,oleconflitn'existeraplus.
Sivousn'avezpasretenuslenomdufichierquiposeproblme(c'estindiqudanslafentrelorsde
l'update)pasdepaniquenormalementl'icnede cefichier(dansvotreexplorateurWindows)est
misenvaleurpar...Siencoreunefoiscen'estpaslecastoujourspasdepaniquenormalement
unfichierquiposeproblmeestsuivipar3fichiersdummenom(unavecl'[Link]
avecl'extension.r+unnumroet.r+unnumro).
[Link]'oprationsuivante:
cliquedroitsurlefichierenquestion.
TortoiseSVN>Editconflicts

Lafentresuivantes'ouvre:
13/24

TutorielTortoiseSVN

Danslecoinenhautgauchedelafentrevousvoyezlefichiertelqu'ilestsurleserveur,en
hautdroitelefichiertelqu'ilestsurvotremachine,etenbaslefichiertelqu'ilvatresurvotre
machine. Les lignes surlignes en orange sont celles qui on t modifies par Tortoise
automatiquement. Les lignes non surlignes sont celle qui n'ont pas t modifies. Les lignes
[Link],
danslapartiebassedelafentre,[Link]'offrentalors
[Link](lebloqueTheirsetlebloque
Mine).Avousdechoisirl'[Link]
nepossdeplusdelignesurlignesenrougelesconflitssontrsolusenregistrez,puisfermezcette
[Link]'oprationsuivante:
cliquedroitsurlefichierquiposaitproblme
TortoiseSVN>Resolved
Lafentresuivantes'ouvrealors:

14/24

TutorielTortoiseSVN

[Link]
nouvellefentres'ouvrevousindiquantqueleproblmesurlefichierabientrsolu.
Maintenantqu'iln'[Link]
biensedrouler.

15/24

TutorielTortoiseSVN

Utilisationavance
Gestiond'tiquettes
[Link] de
programmequipeuventlivresl'utilisateurpourqu'ilpuisselesutiliser.C'estparexempleune
versionbtad'unprogramme.C'[Link]
soitbiengresilfautquesurleserveurlessourcessurlesquelleslesdveloppeurstravaillent
soientdansunrpertoire tronc etqu'ilyaitunautrerpertoirenommparexemple [Link]
racineduserveurseradonc:
tronc/<Sourcesendveloppement
etiquette/<zonedestockaged'uneversion
Lesdveloppeurstravaillentsurlerpertoiretronc/etquanduneversiondecessourcesest
livrableilscrentunetiquette,cequivacopiertouteslessourcesdanslerpertoireetiquette/.
Pourcrercettetiquetteilvousfautraliserl'oprationsuivante:
cliquedroitsurlerpertoiretroncsurvotremachine
TortoiseSVN>branch/tag...
Lafentresuivantes'ouvre:

DanslechampslasuitedeToURLilfautdonnerlerpertoireetiquette/duserveursuivi
16/24

TutorielTortoiseSVN
d'unrpertoireindiquantlenomdel'[Link]'exemplecidessusonentre:
sen+ssh://stics@[Link]/svnroot/sticsv69/etiquette/nom_de_version
Ensuiteonnousdemandecequ'ilfautprendrepourtiquette:

Soitladernireversiondutroncdanscecasilfautcocherlebouton HEADrevisioninthe
repository.
Soitunervisiondanscecasilfautcocher Specificrevisioninrepository etentrerdansle
champsd'ctlenumrodelarvision
[Link].

[Link]'est
pas obligatoire mais fortement recommand pour que les utilisateurs du serveur sache ce que
reprsentecetteversion.
EnsuiteappuyersurOKetunefentres'ouvriravousindiquantquetouts'estbiendroul.

Gestiondesbranches
[Link]
[Link]'unebrancheest
creparundveloppeurpourqu'ilcodedesonctetquesesmodificationsnesoientpasintgres
[Link]'estpasfinimaisqu'[Link]
d'une version bta. Pour que les utilisateurs testent le programme. Pendant ce temps des
[Link]
[Link]
[Link]
fautquelesdveloppeurspuissentramenerleurbranchesurletroncolesautresdveloppeursont
[Link].
Pourcrerunebrancheilfautfairecommepourcrerunetiquette:
cliquedroitsurletroncsurvotremachinelocale.
TortoiseSVN>Branch/tag...
Danslafentrequis'ouvrecettefoisaulieudeslectionnerlerpertoireetiquette/onentre
lecheminpourlerpertoirebranches/[Link]:
svn+ssh://stics@[Link]/svnroot/sticsv69/branche/nom_de_la_branche
Celaimpliquequelerpertoireracinesurleserveursoitdelaforme:
tronc/
etiquette/
branche/
17/24

TutorielTortoiseSVN
Maintenantquelabrancheestcreilvafalloirdplacernotreespacedetravail(l'espacede
travailestlerpertoireonousralisonslescommitetpartirduquelnousmettonsjournos
sources).Eneffetnousn'allonsplustravaillersurletroncmaissurnotrebranche.
Pourralisercedplacement(ouswitch):
cliquedroitsurnotrerpertoiredetravail(surlamachinelocalbiensur)
TortoiseSVN>Switch...
Vousobtenezalorslafentresuivante:

Danslepremierchampsilfautchangerlerpertoireetmettrelerpertoiredelabranchesurlaquelle
onvatravailler:
svn+ssh://stics@[Link]/svnroot/sticsv69/branche/nom_de_la_branche
Ensuite on peut choisir entre se placer la rvision la plus rcente de la branche
(slectionner HEADrevision)ouseplacerunervisionantrieureenentrantlenumrodela
rvision.
EncliquantsurOKunenouvellefentres'ouvrevousindiquantquetoutc'estbiendroul.
Apartirdemaintenanttouslesupdateettouslescommitquevousallezraliserseferontsurcette
brancheetnetoucheronsplusautronc.
Parlasuitesivousvoulezrecollercettebrancheautroncfaites:
cliquedroitsurvotrerpertoiredetravail
SVNcommit
Leserveurauraainsiladernireversiondessourcesprsententsurvotremachine.
18/24

TutorielTortoiseSVN
Il vous faut raliser un nouveau switch vers le tronc. Vous crer un rpertoire tronc sur votre
machinelocalepuis:
cliquedroitsurcedernierrpertoire.
SVNupdate
Maintenantvousavezlessourcesdevotrebranchemisejoursurleserveuretunrpertoire
troncpossdantlessourcesdutroncduserveur.
cliquedroitsurlerpertoiretronc
TortoiseSVN>Merge...
Lafentresuivantes'ouvre:

Dans cette fentre slectionnez Reintegrate a branch (pour rintgrer une branche au
tronc,pourlesautresoptionsallezsurlesite:
[Link]

19/24

TutorielTortoiseSVN
[Link]:

20/24

TutorielTortoiseSVN

21/24

TutorielTortoiseSVN

[Link]:
svn+ssh://stics@[Link]/svnroot/sticsv69/branche/nom_de_la_branche

[Link]:

22/24

TutorielTortoiseSVN

Sur cette fentre vous n'avez pas vraiment besoin demodifier les options, seulement le
champsMergedepthovouspouvezchoisirFullyrecursive.
Unefentres'ouvrevousindiquantl'[Link](voirpartie
Gestiond'unconflit)lafentresuivantevas'ouvrir:

Soitvouschoisissezdegardercequivientdutronc:Uselocal
Soitvouschoisissezdegardercequivientdelabranche:Userepository
23/24

TutorielTortoiseSVN
Soitvousditezlesconflits:Editconflict(etreportezvouslapartieGestiondesconflitspour
savoirquoifairedevantlanouvellefentrequis'ouvre)etpensezensuitecliquersurResolved.
Soitvouschoisissezdersoudreplustard:Resolvelater
Ensuiteletroncdoitpossderlesmodificationsquiavaienttapportessurlabrancheenplusdes
modificationsquiavaienttapporteslabranche.

Recommandations

Garderunseultroncquiseralaversionencours(lesversionsontenfaitlesrvisions)

Ilfautfaireunetiquettequanduneversionestfige

Fairedesbranchesquandvoustesplusieursdveloppeurs

Ilfauttretrsrigoureuxsurlescommentairesetlesmessageslorsdescommitoudes
checkoutpournepasseperdredanslesversions

24/24

Vous aimerez peut-être aussi