Groupe Eyrolles, 2006, ISBN :

Dimension: px
Commencer à balayer dès la page:

Download "Groupe Eyrolles, 2006, ISBN : 2-212-11919-4"

Transcription

1 Groupe Eyrolles, 2006, ISBN :

2 2 Qu est-ce que le contrôle de versions? Le concept du contrôle de versions est assez simple. Il s agit d enregistrer toutes les révisions de ce qui peut être codé ou rédigé lors du développement d une application. Malheureusement, la confusion s est vite installée entre les termes utilisés pour les différents composants du système de versions. Nous commencerons donc par définir les termes employés dans cet ouvrage, tout en indiquant les autres terminologies que vous pourrez trouver, en français ou en anglais. Cette dernière langue est en effet fréquemment utilisée car elle correspond aux commandes employées dans la majorité des systèmes de contrôle de versions. Un dépôt central, ou référentiel Nous avons jusqu ici présenté le système de contrôle de versions comme «l endroit où enregistrer ce que vous produisez», sans précision. En fait, le cœur du système est appelé dépôt (repository), ou encore référentiel. Le dépôt contient, pour presque tous les systèmes de contrôle de versions, la copie de référence de toutes les versions des fichiers de votre projet. Il peut prendre la forme d une base de données, d un ensemble de fichiers normaux ou de la combinaison des

3 8 Pratique du développement collaboratif avec Subversion deux approches. Il s agit dans tous les cas d un élément essentiel de votre gestion de versions et doit à ce titre se trouver sur un ordinateur sécurisé et fiable, régulièrement sauvegardé. Un serveur et des clients distants Avant que les systèmes de versions ne prennent en charge les opérations réseau, les utilisateurs devaient travailler sur le même ordinateur que le dépôt ou, a minima, accéder directement à son système de fichiers. Il était donc difficile de travailler depuis des sites distants et sur des systèmes d exploitation ou des types de machines variés. Cette lacune a été corrigée : de nos jours, vous pouvez accéder à vos données par le biais du réseau. Le dépôt fait office de serveur et les outils de contrôle de versions en sont autant de clients. Le travail devient donc beaucoup plus flexible : les développeurs peuvent se trouver à n importe quel endroit du monde disposant d une connexion réseau et néanmoins accéder à tout le code du projet et à son historique. Ceci se fait en toute sécurité : vous ouvrez à vos collaborateurs l accès Internet à votre dépôt sans que vos concurrents puissent atteindre votre précieux code source. Différentes déclinaisons de l accès réseau Deux définitions du terme «accès réseau» cohabitent chez les concepteurs de systèmes de contrôle de versions. Pour certains, cela signifie simplement un accès aux fichiers d un dépôt via des lecteurs réseau partagés (comme les partages Windows ou les montages NFS). Pour d autres, il s agit d une architecture client-serveur : les clients travaillent avec un dépôt serveur à travers un réseau. Ces deux solutions peuvent fonctionner (la première est cependant assez difficile à concevoir correctement si le mécanisme sous-jacent ne permet pas de verrouiller les fichiers). L utilisation de l un ou l autre de ces systèmes dépend de vos contraintes en termes de déploiement et de sécurité. Si vous utilisez un système basé sur des lecteurs réseau et si vous devez y accéder depuis l extérieur, il faut vous assurer de pouvoir atteindre les données. C est entre autres à cela que servent les VPN (Virtual Private Networks, réseaux privés virtuels), mais toutes les entreprises n en disposent pas. Subversion, lui, est basé sur une architecture client-serveur pour les accès distants. La possibilité de travailler hors ligne Une question se pose immédiatement : que se passe-t-il lorsque vous devez développer mais ne disposez pas d un accès réseau au dépôt? La réponse simple est : «ça dépend». Certains systèmes de contrôle de versions n envisagent pas que vous puissiez être déconnecté du dépôt central lorsque vous travaillez. D autres, dont Subver-

4 Qu est-ce que le contrôle de versions? CHAPITRE 2 9 sion, sont plus souples. Modifier le code dans l avion sur un portable et le re-synchroniser en arrivant à l hôtel ne pose pas de problème. Le mode connecté/ déconnecté est un élément clé pour le choix d un système de contrôle de versions. Assurez-vous que celui que vous choisissez correspond à vos méthodes de travail. ALTERNATIVE Dépôts multiples décentralisés Certains systèmes utilisent des dépôts multiples en lieu et place d un dépôt central unique. Les développeurs s échangent des ensembles de modifications entre les différents dépôts. Ces systèmes décentralisés sont très populaires lorsque de nombreux développeurs doivent travailler de manière semi-autonome. L exemple le plus célèbre est Bitkeeper a, le système utilisé jusque récemment pour le développement du noyau Linux. Arch et SVK en sont d autres exemples. Leur utilisation et le style de développement associé sont très différents et nous n en parlerons pas plus dans cet ouvrage. a. Il a été remplacé par un autre outil, Git, développé spécialement suite à des problèmes de licence de Bitkeeper. Quels éléments enregistrer sur le dépôt? Il faut enregistrer tous les éléments importants d un projet, mais quels sont-ils? Bien évidemment, il faut enregistrer les fichiers de code source que vous utilisez pour compiler votre projet, qu il s agisse de Java, C#, Ruby ou de n importe quel autre langage de programmation. D ailleurs, certains utilisent le terme «systèmes de contrôle de codes sources» pour désigner les systèmes de contrôle de versions. Toutefois, bien d autres éléments, souvent oubliés, doivent également être enregistrés sous contrôle de versions. Par exemple, il peut s agir du script build.xml utilisé par Ant si vous travaillez en Java, car sans lui vous aurez du mal à compiler l application. De même, de nombreux projets utilisent des métadonnées concernant leur configuration ; celles-ci ont également leur place dans le dépôt. Il en est de même pour les scripts de production d images pour les CD-Rom, pour les jeux de données de tests du département qualité, etc. RÈGLE D OR Éléments à enregistrer absolument Il suffit en fait de se poser la question «Si je ne dispose pas d une version à jour de tel fichier, est-ce que je peux construire, tester et livrer l application?». Si la réponse est «non», le fichier en question doit être enregistré dans le dépôt. En plus de ce qui est nécessaire pour effectuer une livraison de votre projet, nous vous conseillons d enregistrer dans le système de contrôle de versions tout ce qui, de manière générale, est utile au projet. Cela inclut en particulier la documentation (à la

5 10 Pratique du développement collaboratif avec Subversion fois celle qui est destinée aux clients et celle à l usage des développeurs), certains courriers électroniques importants, les comptes-rendus de réunions, les informations que vous trouvez sur le Web tout ce qui, d une manière ou d une autre, contribue au projet. Qu en est-il des fichiers annexes générés? Si nous enregistrons tout ce qui est nécessaire à la compilation du projet, faut-il y ajouter les fichiers générés? Par exemple, nous pouvons lancer JavaDoc pour produire la documentation de l API de notre arborescence de source. La documentation doit-elle dans ce cas être enregistrée dans le système de contrôle de versions? La réponse est «non». Si un fichier peut être reconstitué à partir des autres, l enregistrer dans le dépôt n est que de la duplication de données. Ce n est pas tant un problème de place disque qu une question de contrôle sur ce qui se passe : si nous modifions le code source et oublions de mettre la documentation à jour dans le dépôt, elle ne correspondra plus au code source qui s y trouve. Dans ce cas, ne gardons que la source des informations, en l occurrence le code. On peut appliquer cette règle à la plupart des fichiers générés. En pratique néanmoins, ces fichiers peuvent être délicats à regénérer. Peut-être ne possédez-vous qu une seule licence pour l outil qui produit un fichier donné dont tous les développeurs ont besoin. Un fichier peut également nécessiter des heures de génération. Les enregistrer dans le dépôt n est alors pas une si mauvaise idée mais il faut penser à les garder à jour par rapport à ce dont ils sont issus. Des copies de travail locales pour manipuler des fichiers Le dépôt contient tous les fichiers de notre projet, mais cela ne nous aide pas en soi à ajouter des fonctionnalités à notre application. Nous avons besoin des fichiers là où nous pouvons les modifier. C est ce que l on appelle une copie de travail (working copy). On trouve dans la copie locale tout ce qui est nécessaire à un développeur pour faire son travail. Lorsque le projet n est pas d une taille démesurée, il s agit souvent d une copie de l ensemble du code et des fichiers annexes. Pour des projets plus ambitieux, les développeurs peuvent n avoir à se préoccuper que d une partie du code, ce qui leur économise du temps à la compilation et aide à la modularisation générale du projet. La copie de travail est alors parfois appelée «répertoire de travail» (working directory) ou «espace de travail» (workspace).

6 Qu est-ce que le contrôle de versions? CHAPITRE 2 11 Récupérer une première copie (checkout) Tâchons d obtenir notre première copie de travail depuis le dépôt. Les systèmes de contrôle de versions disposent de différents noms pour cette opération, mais le plus courant (et celui que Subversion utilise) est l extraction (checking out), ou encore la récupération. Lorsque vous extrayez une version du dépôt, vous faites des copies locales des fichiers dans votre espace de travail. Il faut impérativement extraire les fichiers, même si vous travaillez sur l ordinateur hébergeant le dépôt. Ce dernier doit être traité comme une boîte noire : vous ne devez vous soucier ni de l endroit où il est, ni de la manière d y accéder. Extraire les fichiers vous fournit une copie à jour des fichiers que vous avez demandés dans une arborescence de répertoires qui correspond à celle du dépôt. On peut aussi exporter les fichiers du dépôt ce qui est une opération légèrement différente de la récupération dont nous venons de traiter. Après une exportation, vous n obtenez pas une copie de travail, mais seulement un instantané des fichiers dans le dépôt. Cela peut être utile pour faire un paquetage du code en vue de sa distribution. Propager ses modifications Lorsque vous travaillez sur un projet, vous modifiez votre copie de travail. De temps en temps, il faudra enregistrer ces modifications dans le dépôt. On appelle cela propager (committing) ou valider les modifications dans le dépôt. Actualiser sa copie de travail Vous n êtes bien sûr pas le seul à travailler et faire des modifications. Les autres membres de votre équipe propagent aussi leurs changements dans le dépôt. Votre copie locale ne reflète pas cet état elle n est pas mise à jour automatiquement à chaque évolution du dépôt. Il faut le demander explicitement au système de contrôle de versions c est l opération d actualisation (update) ou de mise à jour. Vous recevez ainsi la dernière version des fichiers du dépôt. De même, lorsque vos collègues actualisent leur copie locale, ils reçoivent vos dernières modifications. VOCABULAIRE Précisons que certains utilisent indifféremment les termes d actualisation et d extraction car ils estiment extraire les derniers changements.

7 12 Pratique du développement collaboratif avec Subversion Il s agit d un vocable courant que nous utiliserons de temps à autre dans ce livre. La figure 2-1 montre ces différentes interactions. Figure 2 1 Travailler à plusieurs : dépôt et les copies de travail Nous voyons apparaître un problème potentiel : que se passe-t-il si un collègue et vous-même décidez de modifier le même fichier source au même moment? Cela dépend du système de contrôle de versions que vous utilisez, mais tous disposent de méthodes pour gérer la situation. Nous en parlerons plus en détail dans la section Options de verrouillage. Organisation en projets, répertoires et fichiers Jusqu ici, nous avons parlé d enregistrer des éléments sans expliquer comment ces éléments sont organisés. L élément de base de la plupart des systèmes de contrôle de versions est le fichier 1 : chaque fichier de votre projet est enregistré par son nom dans le dépôt. Mais cette organisation ne convient pas lorsque le projet se compose de centaines ou de milliers de fichiers et une entreprise dispose souvent de dizaines de projets. C est pour cela que presque tous les systèmes de contrôle de versions permettent de structurer le dépôt. Prenons l exemple d une application de commande de livres en ligne. Au niveau le plus haut, votre travail est divisé en projets. Tous les fichiers nécessaires au déploiement de l application seront enregistrés dans un projet du dépôt et, si vous le désirez, vous pouvez récupérer celui-ci intégralement sur votre disque dur. Au niveau immédiatement inférieur, le projet est divisé en différents modules indépendants. Dans 1. Dans certains environnements de développement, l'élément atomique est la méthode d un code source, mais ils sont relativement peu courants.

8 Qu est-ce que le contrôle de versions? CHAPITRE 2 13 notre exemple, une équipe travaille peut-être sur le traitement des cartes bancaires et une autre sur la prise en charge des commandes. Les personnes impliquées dans le sous-projet «carte bancaire» n ont pas nécessairement besoin de tout le code source du projet pour travailler. Lorsqu ils extraient le code, ils ne veulent en fait récupérer que ce qui les concerne. Dans le cas de Subversion, le dépôt est organisé en répertoires. Un projet est un répertoire au plus haut niveau et les modules et sous-modules sont des sous-répertoires de votre projet. Cette organisation peut suffire pour les projets simples. Pour les projets plus complexes, vous disposez de modules externes (externals) : définir un module externe vous permet d ajouter un autre dépôt Subversion dans un répertoire de votre projet. Remarque pour les utilisateurs de CVS L organisation de Subversion en répertoires correspond à peu près à la notion de modules CVS. Les modules externes correspondent aux «alias de modules». L organisation en répertoires est tout aussi puissante que l organisation en modules et bien plus simple à comprendre pour la majorité des gens. Nous parlerons plus en détail de cette approche «tout est répertoire» au chapitre 7, Organiser votre dépôt. Le rôle des versions Pour l instant, nous n avons parlé que d enregistrer et obtenir des fichiers dans et depuis un dépôt. Qu en est-il des versions? En fait, le dépôt ne se contente pas de stocker les différents fichiers qui lui sont ajoutés ; il enregistre toutes les versions qui y sont propagées. Si vous extrayez un fichier, le modifiez et propagez vos changements, le dépôt contiendra la version originale et la version modifiée. Les systèmes de contrôle de versions ne gardent pour la plupart que les différentiels entre les versions et non leurs copies complètes. Ainsi Subversion enregistre complètement la dernière version en date et quelques révisions soigneusement choisies. C est un bon compromis entre la taille du répertoire sur le disque et la rapidité des mises à jour et des récupérations. Numérotation des versions On trouve deux approches pour la numérotation des versions : dans un cas ce sont les fichiers qui sont repérés, dans l autre c est tout le dépôt. Lorsque les fichiers sont

9 14 Pratique du développement collaboratif avec Subversion numérotés, la première révision du fichier est nommée 1.1, la suivante 1.2 et ainsi de suite. Par exemple, si vous avez les versions 1.2 de Noeud.cs et 1.6 de Graphe.cs, propager une modification de Noeud.cs l amènera à sa version 1.3 tandis que Graphe.cs restera à 1.6. Lorsque la numérotation s applique au dépôt, le dépôt complet commence à la révision 0 et propager une modification passe la révision de l ensemble à 1, puis 2, et ainsi de suite. Dans cette configuration, on parlera plutôt de «Panel.java de la révision 7» que de «la révision 7 de Panel.java». C est le choix effectué par Subversion. Celui-ci s avère extrêmement pratique lorsqu il s agit de faire référence à des modifications une fois qu elles ont été validées. La section Correctifs de bogues simples, dans le chapitre 8, expliquera comment utiliser les numéros de révision pour fusionner les corrections de bogues entre les branches. Remarque pour les utilisateurs de CVS CVS numérote les fichiers plutôt que le dépôt ; certaines personnes se basent sur le numéro de version d un fichier pour estimer l activité du fichier en question. La numérotation du dépôt utilisée par Subversion ne permet pas cela ; on utilise la commande svn log pour afficher les modifications dans l historique. La figure 2-2 illustre le principe de numérotation appliquée au dépôt. Elle représente trois fichiers : Trains.java, Graphe.java et Noeud.java. Nous propageons d abord une modification dans Graphe.java, le dépôt passe donc à sa révision 2. Si nous modifions Trains.java et Noeud.java, le dépôt passe en révision 3. La révision de Graphe.java est également 3, même si ce fichier n a pas été modifié dans cette révision (les modifications des fichiers sont représentées par les changements de symboles dans les cases de la figure 2-2). Figure 2 2 Numérotation des révisions dans le dépôt Par conséquent, les numéros de révision de Subversion ne sont pas d une grande aide pour connaître l état d un fichier ou groupe de fichiers donné 2. Si vous êtes habitué à une numérotation par fichier, il se peut que vous soyez perdu en voyant votre dépôt passer d un numéro à l autre sans que vous n ayez rien modifié. Cela a plus de sens si

10 Qu est-ce que le contrôle de versions? CHAPITRE 2 15 vous réalisez que la numérotation s applique à toutes les validations et non aux vôtres seules. Enregistrement des versions L enregistrement des révisions est extrêmement puissant. Le système peut s en servir pour récupérer une version donnée d un fichier, obtenir le code source d une application exactement tel qu il était un mois avant ou encore vous dire ce qui a changé dans un fichier donné entre les révisions 7 et 9. Cela peut également servir à annuler des erreurs. Si vous vous apercevez en fin de semaine que vous vous êtes engagé dans une impasse, vous pouvez annuler vos modifications et revenir au code du lundi matin. Marquer l état du projet à un instant donné La numérotation des versions est très pratique, mais en général les humains se souviennent mieux d un nom tel que «PréLivraison2» que d un numéro tel que «r347». Vous pouvez assigner un nom à un groupe de fichiers (ou un répertoire ou un projet entier) à une date donnée grâce à une marque (tag). Si vous avez nommé un groupe de fichiers «PreLivraison2», vous pouvez les récupérer avec cette même marque. Les marques permettent une bonne gestion des événements de la vie du projet. Nous les utiliserons beaucoup dans cet ouvrage. Nous parlerons des marques et des branches (qui feront l objet de la prochaine section) au chapitre 8. Créer plusieurs branches Un problème fréquent : gérer le code à livrer En temps normal, la base de code est commune à tous les développeurs du projet (même s ils travaillent probablement sur différentes parties de cette base). Ceux-ci récupèrent du code, le modifient dans leur copie de travail et propagent leurs modifications, le tout étant partagé. Cette base de code s appelle le tronc commun (trunk) 2. Cette méthode est de toutes manières assez aléatoire. Une seule révision peut concerner toutes les lignes d un fichier il est bien plus sûr d utiliser les fonctions de navigation de votre système de gestion de versions pour savoir à quel point vos données ont été modifiées.

11 16 Pratique du développement collaboratif avec Subversion et est illustrée par la figure 2-3. Dans cette figure (et celles qui suivent), l axe de temps va de gauche à droite. La ligne la plus épaisse représente la progression du tronc commun au cours du développement. Les développeurs en extraient le code et y propagent leurs modifications. Figure 2 3 Un tronc commun simple Supposons maintenant que l heure de la livraison approche : nous sortons du fonctionnement normal du projet. Une partie de l équipe s occupe des bogues de dernière minute ; il leur faut pour cela du code stable car ajouter une fonctionnalité (prévue pour la livraison suivante) est source potentielle de nouveaux bogues. Une première solution est d arrêter tout développement pendant la préparation de la livraison ce qui revient à mettre en chômage technique le reste de l équipe. On peut aussi envisager de copier le code source sur une autre machine et demander à l équipe de livraison de ne travailler que sur cette machine. Qu adviendra-t-il alors des modifications qu ils font? Comment en garder trace? S ils trouvent des bogues dans le code livré qui sont également présents dans le tronc commun, comment y réintégrer leurs correctifs? Et une fois que le logiciel a été livré, comment réparer les bogues signalés par les clients? Comment être sûr que le code dont nous disposons est bien le même que celui que nous avions livré? La solution : utiliser des branches Il est bien plus judicieux d utiliser la gestion des branches proposée par les systèmes de contrôle de versions. Lorsque l on crée une nouvelle branche, on sépare l avenir du code en deux possibilités. Revenons à notre exemple : l équipe doit livrer une nouvelle version du produit. Jusqu ici, tout le monde a travaillé dans le tronc commun, la base de code montrée en figure 2-3. Les développeurs qui s occupent de la livraison veulent s isoler de ce tronc commun et créent une branche dans le dépôt. Désormais, et jusqu à la livraison, ils travailleront uniquement dans cette branche. Une fois que l application sera livrée, la

12 Qu est-ce que le contrôle de versions? CHAPITRE 2 17 branche restera active : on y placera les corrections des bogues signalés par les clients. Cela est illustré à la figure 2-4. Figure 2 4 Tronc commun et branche de livraison Une branche se comporte presque comme un dépôt complètement différent : les gens qui l utilisent voient le code qu elle contient et travaillent indépendamment des gens qui utilisent une autre branche ou le tronc commun. Chaque branche a son propre historique et trace les modifications indépendamment du tronc commun à partir du moment où les branches se différencient. C est exactement le comportement désiré lors d une livraison. Les développeurs qui travaillent sur la livraison disposent d une base de code stable à peaufiner et le reste de l équipe peut continuer à travailler sur la base de code principale. De plus, lorsque les clients signalent un problème, le code sera disponible dans la branche de livraison, ce qui facilite la correction des bogues sans pour autant inclure du code récent du tronc commun. Gestion des branches Les branches sont gérées elles aussi sous forme de répertoires dans Subversion : vous pouvez créer une branche en copiant le tronc commun dans un nouvel emplacement. En interne, le mécanisme de copie de Subversion est dit «paresseux» (lazy copies), ce qui améliore son efficacité. Lorsque vous copiez un fichier ou un répertoire, Subversion fait un lien vers l original. Il enregistre ensuite uniquement les modifications par rapport à cet original. De cette manière, Subversion peut copier des arborescences lourdes rapidement et sur très peu d espace disque. Il vaut mieux utiliser les branches avec parcimonie. Ce mécanisme est certes fort pratique lorsqu il s agit de ne pas mettre tous vos œufs dans le même panier mais la fusion entre les branches peut vite devenir coûteuse : il faut fusionner plusieurs bases

13 18 Pratique du développement collaboratif avec Subversion de développement sans en oublier. Il est à noter que si vous créez de nombreuses branches, en particulier pour paralléliser différentes approches de développement plutôt que pour préparer des livraisons, c est peut-être le signe qu il y a un problème. Dans ce livre, nous décrirons un schéma simple pour répondre à vos besoins sans ajouter de complexité inutile. ATTENTION Et des branches de branches? En théorie, on peut créer des branches de branches. En pratique, il est rare d y recourir. Nous avons rencontré de nombreux développeurs qui ont abandonné définitivement l usage de branches après une mauvaise expérience due à un schéma de branches trop complexe. Fusionner des branches Plusieurs branches d un dépôt peuvent cohabiter sur le même ordinateur, dans des répertoires différents. Un développeur travaillera ainsi en parallèle sur le tronc commun et sur les correctifs de bogues de la branche de livraison. Les systèmes de contrôle de versions permettent aussi de fusionner deux branches. Si vous corrigez un bogue dans la branche de livraison et si le même bogue est présent dans le tronc commun, vous demanderez au système de contrôle de versions d appliquer au tronc commun les changements que vous avez effectués dans la branche. Vous pouvez aussi fusionner plusieurs branches de livraison. Cela évite la plupart des opérations de copier-coller entre les différentes versions. Nous parlerons de la fusion plus en détail dans la suite. Les différents types de verrouillage Supposons que deux développeurs travaillent sur le même projet. Ils ont tous les deux récupéré les fichiers du projet dans leurs espaces de travail respectifs et ils veulent tous deux modifier leur copie de Fichier1.java. Que va-t-il se passer lorsqu ils valideront les modifications? Dans le pire des cas, le système de contrôle de versions accepte les modifications du premier développeur, puis celles du second. Comme celui-ci n a pas intégré les premières modifications, ces dernières sont alors perdues. Pour éviter cela, les systèmes de contrôle de versions disposent d un processus de résolution de conflits. Il en existe principalement deux types.

14 Qu est-ce que le contrôle de versions? CHAPITRE 2 19 Verrouillage strict Tous les fichiers extraits depuis le dépôt sont marqués en lecture seule. Vous pouvez les lire et compiler votre application mais vous ne pouvez pas les modifier. Pour cela, il faut demander la permission au dépôt. Si personne d autre n édite le fichier, le dépôt vous accorde cette permission en écriture sur votre copie locale. Si quelqu un d autre réclame le fichier pendant cet intervalle de temps, la permission lui sera refusée. La copie ne sera disponible pour les autres membres de l équipe que lorsque vous aurez terminé et propagé vos modifications. Votre copie locale revient alors en lecture seule. Verrouillage optimiste Le second type de résolution de conflits est souvent désigné par le nom de «verrouillage optimiste», même s il ne s agit pas à proprement parler d un verrouillage. Dans ce cas, tous les développeurs peuvent modifier tous les fichiers qu ils ont extraits. En revanche, le dépôt ne permet pas de propager un fichier qui n est pas à jour par rapport à la version du dépôt : vous devez d abord actualiser votre copie locale pour inclure les dernières modifications avant de propager les vôtres. Toute l intelligence du système réside dans le fait que, plutôt que d effacer vos modifications en les remplaçant par celles du dépôt, il essaie de fusionner les deux jeux de modifications. Considérons par exemple le fichier Fichier1.java : public class File1 { public String getname(){ return "Toto"; } public int getsize() { return 42; } } Les deux développeurs extraient tous deux ce fichier. Le premier modifie la ligne 3 : return "TOTO"; et propage cette modification. La copie du deuxième développeur est alors périmée, sans que celui-ci en soit conscient. Il change alors la ligne 6 pour retourner 99 et non 42. Lorsqu il tente de propager cette modification, le dépôt lui indique que sa copie n est pas à jour : il doit fusionner les modifications apportées à la copie de

15 20 Pratique du développement collaboratif avec Subversion dépôt. Cela correspond à l étoile marquée «DÉSYNCHRONISATION» de la figure 2-5. Figure 2 5 Deux développeurs modifient le même fichier mais le conflit est résolu par une fusion. Les deux modifications touchent des parties différentes du fichier ; le système de contrôle de versions met à jour la ligne 3 de la copie locale du second développeur sans toucher au reste. Ainsi, les deux versions sont fusionnées sans problème. Le verrouillage optimiste peut vous paraître téméraire puisque plusieurs personnes peuvent travailler sur les mêmes fichiers en même temps. C est souvent ce que craignent les gens qui n ont jamais essayé de le mettre en pratique : ils estiment que cela ne peut pas marcher et refusent de travailler avec un système de contrôle de versions qui ne permet pas un verrouillage strict des fichiers.

16 Qu est-ce que le contrôle de versions? CHAPITRE 2 21 Un conflit peut arriver Que se serait-il passé s ils avaient tous deux modifié la ligne 3 de manière différente? De la même façon, le dépôt aurait signalé au deuxième développeur que sa copie locale n était plus valable. En revanche, lors de la mise à jour, le système ne sait pas quelle modification garder : nous sommes en présence d un conflit. Un avertissement est indiqué dans sa copie du fichier source. Il faudra le résoudre à la main et probablement discuter de la raison pour laquelle ils travaillaient tous deux sur la même ligne de code. En fait, le verrouillage strict apporte plus d ennuis que de bénéfices. Les conflits dans un système à verrouillage optimiste (comme Subversion) sont finalement assez rares. Les membres d une équipe donnée travaillent en général sur des parties différentes du code et les collisions ne sont pas très fréquentes. S ils doivent vraiment travailler sur le même fichier, c est souvent sur des portions de code différentes. Dans un système de verrouillage strict, il faudrait attendre que l autre personne ait terminé avant de pouvoir prendre la main sur le fichier. Ce problème ne se pose pas lorsqu on utilise un système de verrouillage optimiste. Nous avons testé les deux systèmes : pour la très grande majorité des gens, le système de verrouillage optimiste est le plus intéressant. Contrôle de versions ou gestion de configuration Il est possible que vous entendiez parler de systèmes de gestion de configuration (configuration management ou CM) ou de gestion de configuration logicielle (software configuration management, SCM). Ceux-ci peuvent ressembler à première vue à du contrôle de versions, ce qui est en grande partie vrai. En effet, la gestion de configuration s appuie largement sur un bon système de contrôle de versions. Cela n en est cependant pas le seul aspect. La gestion de configuration est une branche du génie logiciel qui vise à obtenir des livraisons de logiciel précises et reproductibles. La partie technique peut en être assurée par un système de contrôle de versions, mais ce travail nécessite de nombreuses interventions humaines pour vérifier que rien n a été oublié. Si la gestion de configuration consiste en l identification des éléments à ne pas oublier pour la livraison, le système de contrôle de versions permet d enregistrer cette identification. La gestion de configuration est un vaste sujet que nous ne pouvons pas traiter dans cet ouvrage. Si vous désirez en savoir plus à ce sujet, le livre Software Configuration Management Patterns : effective teamwork, practical integration (de Sephan P. Berczule et Brad Appleton, Addison-Wesley, 2003) vous fournira bien plus de détails. Pour le moment, voyons comment utiliser les systèmes de contrôle de versions pour gérer notre travail. Les chapitres suivants s articulent autour de l utilisation d un système particulier, Subversion.

17 22 Pratique du développement collaboratif avec Subversion Mise en œuvre Le contrôle de versions présente des avantages évidents pour la gestion de projet ; pourtant, peu d équipes le mettent en œuvre. Pour certaines, c est le passage à la pratique qui pose problème : «créer une branche de livraison» est clair, mais la traduction en commandes Subversion l est nettement moins. D autres équipes partent dans l excès inverse et créent de splendides structures extrêmement complexes, ce qui rend le tout impossible à gérer au quotidien. Pour résoudre ces deux problématiques, nous présenterons à la fois une méthode simple pour organiser votre système de contrôle de versions et un ensemble de «recettes de cuisine» pour son usage quotidien. Essayez de ne pas trop vous en éloigner. Si vous estimez avoir besoin d un scénario que nous ne couvrons pas, réfléchissez-y à deux fois : ce n est peut-être pas nécessaire. Comme pour toutes les recettes de cuisine, celles-ci vous deviendront de plus en plus familières au fur et à mesure que vous les exécuterez ; vous pourrez alors commencer à faire d autres expériences. Évitez cependant de les mener dans un dépôt de production. Il vaut mieux tester le scénario que vous envisagez dans un dépôt dédié aux manipulations hasardeuses (comme celui que nous allons mettre en place au chapitre suivant) ne mettant pas en jeu l intégrité du système de production. Principes de base Le contrôle de versions doit être un des trois piliers pratiques que toute équipe projet doit maîtriser (les deux autres, le test unitaire et l automatisation de projets, sont couverts dans les ouvrages Pragmatic Unit Testing in Java with JUnit 3 et Pragmatic Project Automation : How to build, deploy and monitor Java applications 4 ). Toute équipe devrait utiliser un système de contrôle de versions, quelles que soient les circonstances et quel que soit ce qu elle produit. Pour que cela soit le cas, il faut que le système soit simple, transparent et léger. Simplicité. Elle implique que quelque chose qui doit a priori être simple l est effectivement. Propager toutes les modifications est une opération simple et courante ; cela doit donc se faire en une ou deux actions. Créer une livraison pour un client est plus complexe et moins courant : on peut se permettre d y consacrer plus d étapes, tout en gardant le processus le plus simple possible. 3. Andrew Hunt and David Thomas. The Pragmatic programmers, LLC, Raleigh, NC and Dallas, TX, Mike Clark. The Pragmatic programmers, LLC, Raleigh, NC and Dallas, TX, 2004.

18 Qu est-ce que le contrôle de versions? CHAPITRE 2 23 Transparence. Il nous faut savoir précisément ce que nous sommes en train de faire et pour quelle version du projet. Le développement logiciel ne supporte pas les devinettes... Légèreté. Aucune interférence ne sera admise avec le déroulement normal du travail. Éléments importants lors de l usage du contrôle de versions Voici un ensemble de règles générales à suivre lorsque vous utilisez un système de contrôle de versions : Assurez-vous avant de commencer que vous disposez d une connexion efficace et sécurisée à votre dépôt. Une fois que vous avez contacté le serveur Subversion, vous n utiliserez de façon quotidienne qu un petit nombre de commandes. Chaque projet de votre entreprise doit disposer de son propre répertoire dans le dépôt Subversion. Il faut pouvoir récupérer tout le code source d un projet donné à partir d un seul endroit. Si un projet contient des sous-composants autonomes ou partagés, ceux-ci devraient disposer d un projet propre et être inclus comme ressources externes dans d autres projets. Si du code de parties tierces intervient (fournisseurs ou projets libres), il doit être géré comme une ressource. Les développeurs doivent utiliser des branches pour séparer la base de code principale des autres bases, comme les branches de livraison et les expériences volumineuses. Il faut aussi utiliser les marques pour identifier les points saillants du développement, y compris les livraisons et corrections de bogues. Nous aborderons chacun de ces points dans les chapitres qui suivent.

Groupe Eyrolles, 2006, ISBN : 2-212-11919-4

Groupe Eyrolles, 2006, ISBN : 2-212-11919-4 Groupe Eyrolles, 2006, ISBN : 2-212-11919-4 Table des matières Préface... III Remerciements................................................... III Conventions typographiques........................................

Plus en détail

Utilisation de SVN. 1 Introduction. 2 Architecture. 3 Références et aide en ligne

Utilisation de SVN. 1 Introduction. 2 Architecture. 3 Références et aide en ligne N7 1IMA TECHNOLOGIE OBJET TP 3 18/02/2015 (Séance TP 2) Objectifs : Comprendre le principe d un outil de gestion de configuration Savoir utiliser SVN (subversion) 1 Introduction Pour travailler en groupe

Plus en détail

Séance n o 1 : Diff, Patch, Subversion

Séance n o 1 : Diff, Patch, Subversion 1 Introduction Licence Professionnelle ASRALL Outils Logiciels Libres Séance n o 1 : Diff, Patch, Subversion La gestion de projet nécessite des outils évolués permettant de faciliter cette gestion. En

Plus en détail

PROGRAMMATION WEB. Introduction à SVN. 20 septembre 2015 Denis Monnerat. IUT de Fontainebleau. monnerat@u-pec.fr. Introduction à SVN 1

PROGRAMMATION WEB. Introduction à SVN. 20 septembre 2015 Denis Monnerat. IUT de Fontainebleau. monnerat@u-pec.fr. Introduction à SVN 1 PROGRAMMATION WEB Introduction à SVN 20 septembre 2015 Denis Monnerat monnerat@u-pec.fr IUT de Fontainebleau Introduction à SVN 1 Sommaire 1. Introduction 2. Notions de bases 3. Cycle d utilisation 4.

Plus en détail

Philosophie des extensions WordPress

Philosophie des extensions WordPress 8 Philosophie des extensions WordPress Le concept L une des forces de WordPress dans la jungle CMS, c est la simplicité de création d extensions. Il y a plusieurs raisons à cela. Des raisons techniques

Plus en détail

Module 7 : Crashs d Excel

Module 7 : Crashs d Excel Module 7 : Crashs d Excel 7.0 Introduction La plupart des utilisateurs d Excel ont probablement été confrontés à des ralentissements ou à un blocage, accompagné du redoutable message «Microsoft Excel a

Plus en détail

UserLock testé par PC Mag

UserLock testé par PC Mag UserLock testé par PC Mag Article original publié le 11 mars 2010 sur PCMag.com EN BREF UserLock verrouille les PCs et le fait bien. Ce «poids-plume» complète les fonctionnalités des Stratégies de Groupe

Plus en détail

CREER ET FORMATER UNE PARTITION DE DISQUE DUR 1 QUE SONT LES PARTITIONS ET LES LECTEURS LOGIQUES? 6

CREER ET FORMATER UNE PARTITION DE DISQUE DUR 1 QUE SONT LES PARTITIONS ET LES LECTEURS LOGIQUES? 6 Table des matières. CREER ET FORMATER UNE PARTITION DE DISQUE DUR 1 QUE SONT LES PARTITIONS ET LES LECTEURS LOGIQUES? 6 QUE SONT LES DISQUES DE BASE ET LES DISQUES DYNAMIQUES? 6 FORMATAGE DES DISQUES ET

Plus en détail

et dépannage de PC Configuration Sophie Lange Guide de formation avec exercices pratiques Préparation à la certification A+

et dépannage de PC Configuration Sophie Lange Guide de formation avec exercices pratiques Préparation à la certification A+ Guide de formation avec exercices pratiques Configuration et dépannage de PC Préparation à la certification A+ Sophie Lange Troisième édition : couvre Windows 2000, Windows XP et Windows Vista Les Guides

Plus en détail

Plateforme de capture et d analyse de sites Web AspirWeb

Plateforme de capture et d analyse de sites Web AspirWeb Projet Java ESIAL 2A 2009-2010 Plateforme de capture et d analyse de sites Web AspirWeb 1. Contexte Ce projet de deuxième année permet d approfondir par la pratique les méthodes et techniques acquises

Plus en détail

Installer un espace de travail collaboratif et d e learning.

Installer un espace de travail collaboratif et d e learning. STG Travail collaboratif / c2i Mars 2008 Installer un espace de travail collaboratif et d e learning. Olivier Mondet http://unidentified one.net Lorsque l on désire installer une plateforme de travail

Plus en détail

1ère année. On découvre ainsi la sous-commande create : svnadmin create -- help

1ère année. On découvre ainsi la sous-commande create : svnadmin create -- help TD OMGL/VCS n 4 SVN IUT Orléans 1ère année Dans ce TD, vous allez commencer à vous familiariser avec SVN (Subversion). La commande principale pour cet utilitaire est svn. Les fonctionalités qu il offre

Plus en détail

La gestion de version avec Subversion. Konrad HINSEN Centre de Biophysique Moléculaire (Orléans) et Synchrotron Soleil (St Aubin)

La gestion de version avec Subversion. Konrad HINSEN Centre de Biophysique Moléculaire (Orléans) et Synchrotron Soleil (St Aubin) La gestion de version avec Subversion Konrad HINSEN Centre de Biophysique Moléculaire (Orléans) et Synchrotron Soleil (St Aubin) Architecture client-serveur Serveur Client Revision 1 Makefile src/init.c

Plus en détail

Le système de gestion de version Git et GitHub

Le système de gestion de version Git et GitHub Le système de gestion de version Git et GitHub Génie Logiciel - MPRI GROSSHANS Nathan nathan.grosshans@lsv.ens-cachan.fr 9 octobre 2014 Introduction Système de gestion de version Système logiciel permettant

Plus en détail

Utiliser la forge de l'ubp pour gérer un projet avec SVN - Les bases -

Utiliser la forge de l'ubp pour gérer un projet avec SVN - Les bases - Utiliser la forge de l'ubp pour gérer un projet avec SVN - Les bases - Hélène Toussaint, 27 novembre 2012 But du document : Le but de ce document est de découvrir la gestion de projets à l'aide des outils

Plus en détail

Désinstallation des versions antérieures

Désinstallation des versions antérieures Nous vous recommandons de lire ce document avant de commencer l installation d Universalis 2011 sur Windows. Vous y trouverez une description de la procédure d installation, ainsi que les réponses aux

Plus en détail

Génie logiciel, conduite de projets... Mémo. Utilisation de subversion et de forge. Bruno Zanuttini, Jean-Luc Lambert, François Rioult

Génie logiciel, conduite de projets... Mémo. Utilisation de subversion et de forge. Bruno Zanuttini, Jean-Luc Lambert, François Rioult Université de Caen Basse-Normandie Département d informatique Tous diplômes, 2012 2013 Unité : N/A Génie logiciel, conduite de projets... Mémo. Utilisation de subversion et de forge Bruno Zanuttini, Jean-Luc

Plus en détail

Comment configurer les HotFolders et les Workflows

Comment configurer les HotFolders et les Workflows Comment configurer les HotFolders et les Workflows HotFolders 1 À la base : le Hotfolder en tant que gestionnaire de fichiers 1 Un exemple : les Hotfolders et la barre d images 2 Imprimer depuis un client

Plus en détail

Installer Joomla. 2013 Pearson France Joomla! Le guide officiel Jennifer Marriott, Elin Waring

Installer Joomla. 2013 Pearson France Joomla! Le guide officiel Jennifer Marriott, Elin Waring 3 Installer Joomla Dans ce chapitre, nous procéderons au téléchargement et à l installation manuelle de Joomla, et nous expliquerons la configuration de base. Les captures d écran et les instructions font

Plus en détail

Projet 1A :Atelier SVN. Plateforme de travail :SourceForge

Projet 1A :Atelier SVN. Plateforme de travail :SourceForge Projet 1A :Atelier SVN Plateforme de travail :SourceForge Introduction Le but de ce tutorial est de vous initier à l utilisation de l outil Subversion sous la plateforme SourceForge. Cet outil vous facilitera

Plus en détail

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel.

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel. Méthode de Test Pour WIKIROUTE Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel. [Tapez le nom de l'auteur] 10/06/2009 Sommaire I. Introduction...

Plus en détail

Quelques éléments de compilation en C et makefiles

Quelques éléments de compilation en C et makefiles Quelques éléments de compilation en C et makefiles Guillaume Feuillade 1 Compiler un programme C Le principe de la compilation consiste à passer d un ensemble de fichiers de code à un programme exécutable

Plus en détail

LE SAS SOFTWARE DEPOT

LE SAS SOFTWARE DEPOT LE SAS SOFTWARE DEPOT Depuis SAS 9, l ensemble des logiciels SAS peuvent être installés depuis un unique répertoire : le SAS Software Depot. Il contient tous les exécutables permettant d installer les

Plus en détail

Introduction Les architectes Les utilisateurs expérimentés Les créateurs de contenu Les chefs de projet Les documentalistes

Introduction Les architectes Les utilisateurs expérimentés Les créateurs de contenu Les chefs de projet Les documentalistes Introduction Bienvenue dans le Kit d administration Microsoft Office SharePoint Server 2007! Si vous lisez cette introduction, il y a de grandes chances pour que vous soyez intéressé par l administration

Plus en détail

MISE A JOUR : 04 FEVRIER 2011 PROCÉDURE D INSTALLATION. Cegid Business COMMENT INSTALLER CEGID BUSINESS V9 SOUS WINDOWS XP, VISTA ET 7

MISE A JOUR : 04 FEVRIER 2011 PROCÉDURE D INSTALLATION. Cegid Business COMMENT INSTALLER CEGID BUSINESS V9 SOUS WINDOWS XP, VISTA ET 7 PROCÉDURE D INSTALLATION Cegid Business V9 COMMENT INSTALLER CEGID BUSINESS V9 SOUS WINDOWS XP, VISTA ET 7 Sommaire 1. Introduction 2. Installation de SQL Server 2005 ou 2008 3. Installation de Cegid Business

Plus en détail

Solutions de gestion de la sécurité Livre blanc

Solutions de gestion de la sécurité Livre blanc Solutions de gestion de la sécurité Livre blanc L intégration de la gestion des identités et des accès avec l authentification unique Objectif : Renforcer la politique de sécurité et améliorer la productivité

Plus en détail

Introduction à Eclipse

Introduction à Eclipse Introduction à Eclipse Eclipse IDE est un environnement de développement intégré libre (le terme Eclipse désigne également le projet correspondant, lancé par IBM) extensible, universel et polyvalent, permettant

Plus en détail

Document d évaluation système

Document d évaluation système CODAZZI Rama DAMOTTE Alan GUI Kai HAMMERER Jérémy TORCK Quentin RICM5 Document d évaluation système Groupe 2 Site de vente de stickers personnalisés My Stick It ETAT DE CHAQUE COMPOSANT : NON REALISE,

Plus en détail

JASPERSOFT ET LE PAYSAGE ANALYTIQUE. Jaspersoft et le paysage analytique 1

JASPERSOFT ET LE PAYSAGE ANALYTIQUE. Jaspersoft et le paysage analytique 1 JASPERSOFT ET LE PAYSAGE ANALYTIQUE Jaspersoft et le paysage analytique 1 Ce texte est un résumé du Livre Blanc complet. N hésitez pas à vous inscrire sur Jaspersoft (http://www.jaspersoft.com/fr/analyticslandscape-jaspersoft)

Plus en détail

Guide de transfert. Courriel Affaires

Guide de transfert. Courriel Affaires Guide de transfert Courriel Affaires Juin 2013 Table des matières Introduction 3 Transfert par un administrateur Voici ce que vous devez fournir avant de commencer 1. Importation de Fichiers PST 2. Exportation

Plus en détail

Fonctionnement de Windows XP Mode avec Windows Virtual PC

Fonctionnement de Windows XP Mode avec Windows Virtual PC Fonctionnement de Windows XP Mode avec Windows Virtual PC Guide pratique pour les petites entreprises Table des matières Section 1 : présentation de Windows XP Mode pour Windows 7 2 Section 2 : démarrage

Plus en détail

Guide d installation UNIVERSALIS 2014

Guide d installation UNIVERSALIS 2014 Guide d installation UNIVERSALIS 2014 (Mac) Nous vous recommandons de lire ce document avant de commencer l installation d UNIVERSALIS 2014 sur Mac OS X. Vous y trouverez la description de la procédure

Plus en détail

Procédures et fonctions

Procédures et fonctions Chapitre 5 Procédures et fonctions 5.1 Introduction Considérons le programme suivant, dont le but est d inverser les éléments d un tableau : public class InversionTableau1 { int t[]= {8, 2, 1, 23; Terminal.ecrireStringln("Tableau

Plus en détail

Gé nié Logiciél Livré Blanc

Gé nié Logiciél Livré Blanc Gé nié Logiciél Livré Blanc Version 0.2 26 Octobre 2011 Xavier Blanc Xavier.Blanc@labri.fr Partie I : Les Bases Sans donner des définitions trop rigoureuses, il faut bien commencer ce livre par énoncer

Plus en détail

SAUVEGARDE ET RESTAURATION DES METADONNEES AVEC SAS 9.3

SAUVEGARDE ET RESTAURATION DES METADONNEES AVEC SAS 9.3 SAUVEGARDE ET RESTAURATION DES METADONNEES AVEC SAS 9.3 SAS 9.3 est disponible depuis le 12 Juillet 2011. Cette nouvelle version s accompagne de son lot de nouveautés notamment au niveau du serveur de

Plus en détail

SchoolPoint Manuel utilisateur

SchoolPoint Manuel utilisateur SchoolPoint Manuel utilisateur SchoolPoint - manuel d utilisation 1 Table des matières Présentation de SchoolPoint... 3 Accès au serveur...3 Interface de travail...4 Profil... 4 Echange de news... 4 SkyDrive...

Plus en détail

Élaborer une production dans un contexte collaboratif. Michel Futtersack, Faculté de Droit, Université Paris Descartes, Sorbonne Paris Cité

Élaborer une production dans un contexte collaboratif. Michel Futtersack, Faculté de Droit, Université Paris Descartes, Sorbonne Paris Cité Élaborer une production dans un contexte collaboratif Michel Futtersack, Faculté de Droit, Université Paris Descartes, Sorbonne Paris Cité Édition en ligne ou hors ligne Édition en ligne : on utilise une

Plus en détail

Le programme OFFICE GSP est disponible sur le site http://www.officegsp.com.

Le programme OFFICE GSP est disponible sur le site http://www.officegsp.com. 1 1 - Installation & Mise à Jour du logiciel 1.1 Première Installation Cette procédure d installation est indispensable pour tout ordinateur n ayant jamais fait l objet d une installation du logiciel.

Plus en détail

Guide d installation UNIVERSALIS 2016

Guide d installation UNIVERSALIS 2016 Guide d installation UNIVERSALIS 2016 (Windows) Nous vous recommandons de lire ce document avant de commencer l installation d UNIVERSALIS 2016 sur Windows. Vous y trouverez la description de la procédure

Plus en détail

Professeur superviseur ALAIN APRIL

Professeur superviseur ALAIN APRIL RAPPORT TECHNIQUE PRÉSENTÉ À L ÉCOLE DE TECHNOLOGIE SUPÉRIEURE DANS LE CADRE DU COURS LOG792 PROJET DE FIN D ÉTUDE EN GÉNIE LOGICIEL BLUEUPDATES FRANÇOIS BOYER BOYF18048004 DÉPARTEMENT DE GÉNIE LOGICIEL

Plus en détail

Connecteur Zimbra pour Outlook 2003 (ZCO)

Connecteur Zimbra pour Outlook 2003 (ZCO) Solutions informatiques w Procédure Messagerie Outlook 2003 Connecteur Zimbra pour Microsoft Outlook 2003 (ZCO) 1/49 SOMMAIRE 1 Introduction... 3 2 Compatibilité... 3 2.1 Versions supportées des systèmes

Plus en détail

Atelier Le gestionnaire de fichier

Atelier Le gestionnaire de fichier Chapitre 12 Atelier Le gestionnaire de fichier I Présentation Nautilus est un gestionnaire de fichiers pour l environnement de bureau Gnome. Il offre toutes les fonctions de gestion de fichier en local

Plus en détail

ETNA Projet de Fin d Étude 2005-2007 RimElse Cahier des charges. c Copyleft 2006, ELSE Team

ETNA Projet de Fin d Étude 2005-2007 RimElse Cahier des charges. c Copyleft 2006, ELSE Team ETNA Projet de Fin d Étude 2005-2007 RimElse Cahier des charges c Copyleft 2006, ELSE Team 18 avril 2006 Table des matières 1 Introduction 2 2 Présentation du projet 3 2.1 Une distribution Évolulable..................

Plus en détail

Présentation. Logistique. Résumé de la 1e Partie. Mise en place du système

Présentation. Logistique. Résumé de la 1e Partie. Mise en place du système Présentation Diapo01 Je m appelle Michel Canneddu. Je développe avec 4D depuis 1987 et j exerce en tant qu indépendant depuis 1990. Avant de commencer, je tiens à remercier mes parrains Jean-Pierre MILLIET,

Plus en détail

Didacticiel - Etudes de cas. Montrer l utilisation de la macro complémentaire TANAGRA.XLA dans le tableur EXCEL.

Didacticiel - Etudes de cas. Montrer l utilisation de la macro complémentaire TANAGRA.XLA dans le tableur EXCEL. Objectif Montrer l utilisation de la macro complémentaire TANAGRA.XLA dans le tableur EXCEL. De nombreux utilisateurs s appuient sur EXCEL pour la gestion de leurs données. C est un outil relativement

Plus en détail

Table des matières. 1 Objectifs... 3 2 Précautions importantes avant toute utilisation :... 4 3 Mode d emploi... 5 4 Questions / réponses...

Table des matières. 1 Objectifs... 3 2 Précautions importantes avant toute utilisation :... 4 3 Mode d emploi... 5 4 Questions / réponses... Table des matières 1 Objectifs... 3 2 Précautions importantes avant toute utilisation :... 4 3 Mode d emploi... 5 4 Questions / réponses... 6 1 Objectifs 1.1 Le BOB Migration Kit permet de : Convertir

Plus en détail

ULCO-L3Info-Projets-CM2

ULCO-L3Info-Projets-CM2 ULCO-L3Info-Projets-CM2 Arnaud Lewandowski, Eric Ramat, Julien Dehos Université du Littoral Côte d Opale 18 juin 2015 A Lewandowski, E Ramat, J Dehos ULCO-L3Info-Projets-CM2 1/44 Sommaire 1 Conception

Plus en détail

Gestion d identités PSL Exploitation IdP Authentic

Gestion d identités PSL Exploitation IdP Authentic Gestion d identités PSL Exploitation IdP Authentic Entr ouvert SCOP http ://www.entrouvert.com Table des matières 1 Arrêt et démarrage 2 2 Configuration 2 2.1 Intégration à la fédération............................

Plus en détail

Aide pour l installation (Français) Premier démarrage

Aide pour l installation (Français) Premier démarrage Premier démarrage Aide pour l installation (Français) Nous vous remercions d avoir opté pour notre produit et nous espérons que votre nouveau logiciel G DATA vous apportera entière satisfaction. Si vous

Plus en détail

Gestion de versions avec Git

Gestion de versions avec Git Gestion de versions avec Git Lucas Nussbaum lucas.nussbaum@univ-lorraine.fr Lucas Nussbaum Gestion de versions avec Git 1 / 17 Logiciels de gestion de versions Ou Version Control System (VCS) ou RCS :

Plus en détail

LD Paye pour Windows

LD Paye pour Windows LD Paye pour Windows Version 7 Installation du progiciel Installation des programmes Ce paragraphe et ceux qui suivent décrivent l ensemble des tâches d installation de LDPaye pour Windows relatives à

Plus en détail

Développement itératif, évolutif et agile

Développement itératif, évolutif et agile Document Développement itératif, évolutif et agile Auteur Nicoleta SERGI Version 1.0 Date de sortie 23/11/2007 1. Processus Unifié Développement itératif, évolutif et agile Contrairement au cycle de vie

Plus en détail

LE SAS SOFTWARE DEPOT EN VERSION 9.3

LE SAS SOFTWARE DEPOT EN VERSION 9.3 LE SAS SOFTWARE DEPOT EN VERSION 9.3 Depuis SAS 9, l ensemble des logiciels SAS peuvent être installés depuis un répertoire unique : le «SAS Software Depot», que nous appellerons plus simplement «dépôt»

Plus en détail

CVS : Gestion de configuration client-serveur

CVS : Gestion de configuration client-serveur CVS : Gestion de configuration client-serveur Linux Gazette numéro 66 Kapil Sharma kapil@linux4biz.net Jérôme Fenal jerome@fenal.org 1. Introduction CVS est un système de gestion de configuration. En l

Plus en détail

La maintenance logicielle de son ordinateur : Explications (mise à jour le 05/07/2011)

La maintenance logicielle de son ordinateur : Explications (mise à jour le 05/07/2011) La maintenance logicielle de son ordinateur : Explications (mise à jour le 05/07/2011) A/ Maintenance de base avec les outils windows I) Nettoyage du disque : Dans le poste de travail, sur le lecteur «Disque

Plus en détail

Mise à jour de version

Mise à jour de version Mise à jour de version Cegid Business Version 2008 Service d'assistance Téléphonique 0 826 888 488 Sommaire 1. A lire avant installation... 3 2. Installer les nouvelles versions des logiciels... 4 Compte

Plus en détail

FAQ Compatibilité Windows des produits Rimage

FAQ Compatibilité Windows des produits Rimage Comment se passe la transition? En décembre 2011, Rimage commencera à livrer ses produits avec le système d exploitation Windows 7 préinstallé en standard les systèmes intégrés suivants : Rimage Professional

Plus en détail

Also works with Windows XP and Windows Vista

Also works with Windows XP and Windows Vista Also works with Windows XP and Windows Vista PC Mechanic - Nettoie et corrige les erreurs votre ordinateur Guide de démarrage rapide PC Mechanic associe une vaste palette d outils pour assurer l entretien

Plus en détail

Gestion de version et de configuration : de svn à git

Gestion de version et de configuration : de svn à git Projet Informatique Gestion de version et de configuration : de svn à git Philippe Collet Licence 3 Informatique S5 2014-2015 http://deptinfo.unice.fr/twiki/bin/view/linfo/projetinfo201415 Motivations

Plus en détail

Annexe I. Passage de la version 2.xx à 3.xx

Annexe I. Passage de la version 2.xx à 3.xx Annexe I Passage de la version 2.xx à 3.xx 14 Passage de la version 2.xx à la version 3.xx Principes de base Cete section indique les étapes à suivre pour passer de version 2.xx à la version 3.xx. De façon

Plus en détail

Connecteur Zimbra pour Outlook 2007 et 2010 (ZCO) w

Connecteur Zimbra pour Outlook 2007 et 2010 (ZCO) w w Procédure Messagerie Outlook 2007 et 2010 Solutions informatiques Connecteur Zimbra pour Microsoft Outlook 2007 et 2010 (ZCO) 1/46 SOMMAIRE 1 Introduction... 3 2 Compatibilité... 3 2.1 Versions supportées

Plus en détail

bbc Launch Pad Juillet 2011 Version 10.0

bbc Launch Pad Juillet 2011 Version 10.0 bbc Configuration d Adobe Digital Enterprise Platform Document Services - Launch Pad 10.0 Guide de l administrateur et du développeur Launch Pad Juillet 2011 Version 10.0 Mentions juridiques Pour plus

Plus en détail

Accès au serveur SQL. Où ranger les accès au serveur SQL?

Accès au serveur SQL. Où ranger les accès au serveur SQL? 150 requête SQL, cela aura un impact sur un nombre limité de lignes et non plus sur l ensemble des données. MySQL propose une clause originale en SQL : LIMIT. Cette clause est disponible avec les différentes

Plus en détail

Notice d utilisation du serveur SE3 (Samba Édu 3) Version «élèves» 2.4 Lycée Jean-Pierre TIMBAUD

Notice d utilisation du serveur SE3 (Samba Édu 3) Version «élèves» 2.4 Lycée Jean-Pierre TIMBAUD Notice d utilisation du serveur SE3 (Samba Édu 3) Version «élèves» 2.4 Lycée Jean-Pierre TIMBAUD 7 septembre 2014 INTRODUCTION Les ordinateurs du lycée sont dans le domaine JPT (sous serveur Linux) possédant

Plus en détail

Projet «Evolution» Référentiel d activités et de compétences : Administrer un parc informatique. Objectifs pédagogiques :

Projet «Evolution» Référentiel d activités et de compétences : Administrer un parc informatique. Objectifs pédagogiques : Référentiel d activités et de compétences : Administrer un parc informatique Objectifs pédagogiques : Mettre en œuvre les outils d'administration de Windows server Mettre en œuvre les outils d'administration

Plus en détail

Guide d installation UNIVERSALIS 2014

Guide d installation UNIVERSALIS 2014 Guide d installation UNIVERSALIS 2014 (Windows) Nous vous recommandons de lire ce document avant de commencer l installation d UNIVERSALIS 2014 sur Windows. Vous y trouverez la description de la procédure

Plus en détail

I. Objectifs de ce document : II. Le changement d architecture :

I. Objectifs de ce document : II. Le changement d architecture : I. Objectifs de ce document : Ce document a pour but de vous présenter : - L outil File Server Migration Toolkit 1.1. - Le mode opératoire à suivre pour migrer les données de plusieurs serveurs de fichiers

Plus en détail

Utilisation du CMS Ametys

Utilisation du CMS Ametys Utilisation du CMS Ametys jeudi 16 septembre 2010 jeudi 14 octobre 2010 J.L. Aucouturier CMS? Ametys? Ametys est un logiciel open source destiné à la production de sites Web, de type système de gestion

Plus en détail

LD Paye pour Windows

LD Paye pour Windows LD Paye pour Windows Version 4 Installation du progiciel Installation des programmes Ce paragraphe et ceux qui suivent décrivent l ensemble des tâches d installation de LDPaye pour Windows relatives à

Plus en détail

Introduction aux systèmes d exploitation

Introduction aux systèmes d exploitation Introduction aux systèmes d exploitation Le système d exploitation est un ensemble de logiciels qui pilotent la partie matérielle d un ordinateur. Les principales ressources gérées par un système d exploitation

Plus en détail

Le Petit Robert 2011 Version réseau Windows

Le Petit Robert 2011 Version réseau Windows Le Petit Robert 2011 Version réseau Windows Manuel d installation serveur et postes clients Ce document décrit la procédure d installation pour la version réseau Windows (partage de fichiers) du Petit

Plus en détail

Connaissez les risques. Protégez-vous. Protégez votre entreprise.

Connaissez les risques. Protégez-vous. Protégez votre entreprise. Protégez-vous en ligne. Connaissez les risques. Protégez-vous. Protégez votre entreprise. CONSEILS PENSEZ CYBERSÉCURITÉ POUR LES PETITES ET MOYENNES ENTREPRISES Si vous êtes comme la plupart des petites

Plus en détail

Exemples d utilisation

Exemples d utilisation Exemples d utilisation Afin de vous donner une indication de la puissance de Librex, voici quelques exemples de la façon dont le logiciel peut être utilisé. Ces exemples sont des cas réels provenant de

Plus en détail

A. Architecture du serveur Tomcat 6

A. Architecture du serveur Tomcat 6 Administration du serveur A. Architecture du serveur Tomcat 6 La compréhension de l architecture interne du serveur Tomcat 6 est un pré-requis indispensable pour bien en maîtriser l administration et la

Plus en détail

Qu est-ce qu une boîte mail

Qu est-ce qu une boîte mail Qu est-ce qu une boîte mail Sur Internet, la messagerie électronique (ou e-mail en anglais) demeure l application la plus utilisée. La messagerie permet à un utilisateur d envoyer des messages à d autres

Plus en détail

La réplication sous SQL Server 2005

La réplication sous SQL Server 2005 La réplication sous SQL Server 2005 Mettre en place la réplication sur SQL Server 2005 La réplication des bases de données est une problématique classique dans les systèmes d'information. En effet, dans

Plus en détail

Ordinateur, système d exploitation

Ordinateur, système d exploitation Ordinateur, système d exploitation 2014-09-02 1 Système d exploitation Machine de von Neumann : seul un programme s exécute. Besoins utilisateurs : plein de programmes. Système d exploitation (Operating

Plus en détail

Installation de Windows XP www.ofppt.info

Installation de Windows XP www.ofppt.info ROYAUME DU MAROC Office de la Formation Professionnelle et de la Promotion du Travail XP DIRECTION RECHERCHE ET INGENIERIE DE FORMATION SECTEUR NTIC XP Sommaire 1 Introduction... 2 2 Vérification de la

Plus en détail

MISE A JOUR : 04 FEVRIER 2011 PROCÉDURE D INSTALLATION. Cegid Business COMMENT INSTALLER CEGID BUSINESS V8 SOUS WINDOWS XP, VISTA ET 7

MISE A JOUR : 04 FEVRIER 2011 PROCÉDURE D INSTALLATION. Cegid Business COMMENT INSTALLER CEGID BUSINESS V8 SOUS WINDOWS XP, VISTA ET 7 PROCÉDURE D INSTALLATION Cegid Business V8 COMMENT INSTALLER CEGID BUSINESS V8 SOUS WINDOWS XP, VISTA ET 7 Sommaire 1. Introduction 2. Installation de SQL Server 2005 ou 2008 3. Installation de Cegid Business

Plus en détail

MANUEL D UTILISATION DU LOGICIEL GoBACKUP 4.85

MANUEL D UTILISATION DU LOGICIEL GoBACKUP 4.85 MANUEL D UTILISATION DU LOGICIEL GoBACKUP 4.85 INSTALLATION 2 SUR LE SITE DE GOBACKUP 2 SUR VOTRE ORDINATEUR 3 UTILISATION DU LOGICIEL GOBACKUP 10 LES DIFFERENTES FONCTIONS DE GOBACKUP 10 SAUVEGARDER 11

Plus en détail

Avant-propos Pourquoi un tel ouvrage?

Avant-propos Pourquoi un tel ouvrage? ao t 2007 7:29 07 Pourquoi un tel ouvrage? Lorsque vous rencontrez un problème en ActionScript, vous disposez de différentes sources d information pour vous aider : en particulier, les forums vous permettent

Plus en détail

Electronic Banking ABACUS

Electronic Banking ABACUS Descriptif d installation pour la communication FTAM Electronic Banking ABACUS Version 2003.1 Ce document décrit la configuration et l utilisation de l interface de communication FTAM. L interface FTAM

Plus en détail

SAS DEPLOYMENT MANAGER

SAS DEPLOYMENT MANAGER SAS DEPLOYMENT MANAGER SAS Deployment Manager est un outil permettant d effectuer des tâches administratives sur votre installation et votre configuration SAS. Il est disponible depuis SAS 9.2 et s est

Plus en détail

Installer des applications Office 2003

Installer des applications Office 2003 ROYAUME DU MAROC Office de la Formation Professionnelle et de la Promotion du Travail Installer des applications Office 2003 DIRECTION RECHERCHE ET INGENIERIE DE FORMATION SECTEUR NTIC Sommaire Introduction...

Plus en détail

Centre pour la formation à l Informatique dans le Secondaire UTILISER NETMEETING DANS LES CCM. Département Education et Technologie.

Centre pour la formation à l Informatique dans le Secondaire UTILISER NETMEETING DANS LES CCM. Département Education et Technologie. Département Education et Technologie UTILISER NETMEETING DANS LES CCM Monique Colinet 5.82 AVRIL 2003 Centre pour la formation à l Informatique dans le Secondaire Une première utilisation de Netmeeting

Plus en détail

Seules les personnes intelligentes consultent le manuel.

Seules les personnes intelligentes consultent le manuel. Seules les personnes intelligentes consultent le manuel. Sommaire Mise en route... 1 Mise sous et hors tension de votre disque en toute sécurité... 1 Déconnexion de périphériques esata et 1394... 2 Périphériques

Plus en détail

2012 - Copyright Arsys Internet E.U.R.L. Arsys Backup Online. Guide de l utilisateur

2012 - Copyright Arsys Internet E.U.R.L. Arsys Backup Online. Guide de l utilisateur Arsys Backup Online Guide de l utilisateur 1 Index 1. Instalation du Logiciel Client...3 Prérequis...3 Installation...3 Configuration de l accès...6 Emplacement du serveur de sécurité...6 Données utilisateur...6

Plus en détail

A l aide de votre e-mail vous pouvez visiter un site web!

A l aide de votre e-mail vous pouvez visiter un site web! A l aide de votre e-mail vous pouvez visiter un site web! par Ueli Scheuermeier, LBL Êtes vous parmi ces agents de terrain qui ont la possibilité de se servir de l e-mail? Mais vous arrivez pas à naviguer

Plus en détail

Produire du code HTML

Produire du code HTML 3 Produire du code HTML Même si l on ne sait pas encore écrire du code HTML, il est important de savoir comment on pourra produire celui-ci. Nous allons voir trois méthodes pour taper du code HTML. Avec

Plus en détail

Automatisation des copies de systèmes SAP

Automatisation des copies de systèmes SAP Pour plus d informations sur les produits UC4 Software, visitez http://www.liftoff-consulting.com/ Automatisation des copies de systèmes SAP Introduction Le thème de la copie des systèmes SAP est une source

Plus en détail

Cet article a été réalisé avec la version commercialisée de Windows Vista build 6000 à partir d une solution de virtualisation Microsoft Virtual PC

Cet article a été réalisé avec la version commercialisée de Windows Vista build 6000 à partir d une solution de virtualisation Microsoft Virtual PC Comprendre User Access Control (Contrôle des comptes Utilisateurs) Cet article a été réalisé avec la version commercialisée de Windows Vista build 6000 à partir d une solution de virtualisation Microsoft

Plus en détail

Projet Professionnel Encadré 1 er Semestre

Projet Professionnel Encadré 1 er Semestre BTS SIO 1 Leclerc Axel INFOSUP Lyon 2014-2015 Projet Professionnel Encadré 1 er Semestre Nature de l activité : Contexte : L association Maison des Ligues (M2L) a constaté que de nombreuses données numériques

Plus en détail

Résolution des problèmes liés aux imprimantes www.ofppt.info

Résolution des problèmes liés aux imprimantes www.ofppt.info ROYAUME DU MAROC Office de la Formation Professionnelle et de la Promotion du Travail aux imprimantes DIRECTION RECHERCHE ET INGENIERIE DE FORMATION SECTEUR NTIC Diagnostiquer un problème Sommaire 1. Introduction...

Plus en détail

Visual Studio.NET et Visual SourceSafe - Part 3

Visual Studio.NET et Visual SourceSafe - Part 3 Visual Studio.NET et Visual SourceSafe - Part 3 VSS et VS.NET en développement collaboratif Dans cette partie, nous verrons comment mettre en place une base SourceSafe sur un serveur afin que plusieurs

Plus en détail

Le concept FAH (ou ASP en anglais)

Le concept FAH (ou ASP en anglais) Le concept FAH (ou ASP en anglais) Présentation FAH signifie Fournisseur d Application Hébergé ASP signifie Application Service Provider L utilisation d un logiciel de gestion classique peut se révéler

Plus en détail

Documentation utilisateur FReg.NET

Documentation utilisateur FReg.NET Epitech Documentation utilisateur FReg.NET Document réservé aux utilisateurs souhaitant comprendre rapidement le fonctionnement du logiciel FReg.NET Lago_a, schehl_c, narcis_m, clique_x, tran-p_n 5/14/2010

Plus en détail

TICE CONTRAT D ACTIVITE N 7 NIVEAU 4 ème Réalisation assistée par ordinateur Analyser le besoin Rédiger le Cahier des Charges Fonctionnel Concevoir le produit Définir le produit Préparer la fabrication

Plus en détail

Système clients serveur Kwartz Vulgarisation, identification, dossier personnel

Système clients serveur Kwartz Vulgarisation, identification, dossier personnel Un peu de vulgarisation Système clients serveur Kwartz Nous allons absolument éviter les termes techniques et essayer de vulgariser au maximum. En effet, l objectif sera à terme pour les enseignants, de

Plus en détail

Bienvenue dans le monde de la construction logicielle

Bienvenue dans le monde de la construction logicielle Chapitre 1 Bienvenue dans le monde de la construction logicielle Sommaire : 1.1 La construction logicielle, qu est-ce que c est? : page 3 1.2 Pourquoi la construction logicielle est-elle importante? :

Plus en détail

Les systèmes de gestion de version

Les systèmes de gestion de version Les systèmes de gestion de version Matthieu Herrb Envol 2010 http://homepages.laas.fr/matthieu/talks/envol10-sgv.pdf Systèmes de gestion de version - kesako? Logiciel permettant de gérer l historique des

Plus en détail