Sommaire

Apache Maven et les SCM

1. Qu’est-ce qu’un SCMSCM ?

Le terme SCM est principalement défini comme Source Code Management, c’est-à-dire le gestionnaire du code source du projet. Ce gestionnaire est généralement un des premiers éléments qui est mis en place lors du démarrage d’un projet.

L’utilisation d’un SCM est une pratique primordiale dans une équipe de développement logiciel puisque le code source est évidemment l’élément fondamental du projet.

Il existe de nombreux outils capables de réaliser de la gestion de code source, néanmoins quel que soit l’outil utilisé, il doit proposer les fonctionnalités de base suivantes :

  • Fournir un emplacement de stockage pour le code source.

  • Proposer un historique de ce qui a été réalisé au fil du temps.

  • Mettre à disposition un système pour que les développeurs puissent travailler en parallèle puis fusionner leur travail par la suite.

  • Donner la possibilité aux développeurs de travailler sans se gêner les uns des autres.

Quelques SCM bien connus en entreprise depuis de longues années sont CVSCVS (Concurrent Versions System) créé en 1990 et SVNSVN ( nopage>Subversion:Voir SVNSubversion) créé en 2000. Aujourd’hui, un des SCM le plus récent est GitGit, qui a été créé en 2005.

Le principe de fonctionnement est le même pour tous ...