Chapter 1. Introduction

Table of Contents

Qu'est-ce que Subversion?
L'Histoire de Subversion
Caractéristiques de Subversion
L'Architecture de Subversion
Installer Subversion
Les Composants de Subversion
Pour commencer rapidement

Le contrôle de version est l'art de gérer les changements faits à l'information. C'est depuis longtemps un outil critique pour les programmeurs, qui typiquement passent leur temps à effectuer de petits changements aux programmes et ensuite à les défaire le jour d'après. Mais l'utilité d'un logiciel de contrôle de version s'étend bien au-delà du champ du développement logiciel. Partout où l'on peut trouver des gens utilisant un ordinateur pour gérer des informations qui changent souvent, il y a de la place pour le contrôle de version. Et c'est là que Subversion entre en jeu.

Ce chapitre contient une introduction approfondie de Subversion — ce que c'est ; ce que ça fait ; comment se le procurer.

Qu'est-ce que Subversion?

Subversion est un système de contrôle de version libre et open-source. En clair, Subversion gère les fichiers et les répertoires à travers le temps. Un arbre de fichiers est placé dans un dépôt central. Le dépôt ressemble fortement à un serveur de fichiers ordinaire, mis à part le fait qu'il mémorise chaque changement opéré sur vos fichiers et répertoires. Cela vous permet de restaurer d'anciennes versions de vos données, ou d'examiner l'historique des changements apportés à celles-ci. Ainsi, beaucoup de gens considèrent un système de contrôle de version comme une sorte de “machine à voyager dans le temps”.

Subversion est capable d'accéder à son dépôt à travers le réseau, ce qui lui permet d'être utilisé par des gens sur différentes machines. A un certain niveau, la capacité par des personnes différentes de modifier et gérer le même ensemble de données à partir de leur situation respective encourage la collaboration. Des progrès peuvent survenir plus rapidement sans le besoin que toutes les modifications s'effectuent au travers d'un seul conduit. Et parce que le travail est géré par version, vous n'avez pas à avoir peur que la perte de ce conduit se fasse au dépend de la qualité — si un changement incorrect est opéré sur les données, défaites-le.

Certains systèmes de contrôle de version sont également des systèmes de gestion de configuration logicielle. Ces systèmes sont spécialement conçus pour gérer des arbres de code source, et ont beaucoup de caractéristiques spécifiques au développement logiciel — telles que la compréhension native des langages de programmation, ou la fourniture d'outils pour construire le logiciel. Subversion, cependant, n'est pas un tel système. C'est un système général qui peut être utilisé pour gérer n'importe quelle collection de fichiers. Pour vous, ces fichiers peuvent être du code source — pour d'autres, n'importe quoi de la liste de courses à des compilations de vidéos digitales et plus encore.