Perforce, le système rapide de gestion de configuration logicielle
Perforce version 2008.2
Date de publication : 23/05/2007 , Date de mise à jour : 09/04/2009
Par
Rija RANDRIANO
Perforce Inc. développe l'un des plus performants SCM du
marché. Cet article de découverte est destiné surtout aux
nouveaux utilisateurs de Perforce.
I. Présentation
I-A. Perforce SCM
I-B. Gestion de configuration
II. Détails de Perforce
II-A. Plates-formes
II-B. Serveur Perforce
II-C. Client Perforce
II-D. Autres composants
III. Démarrer pour la première fois avec Perforce
III-A. Configurer votre espace de travail
III-B. Dépôt
III-C.
Ajouter des fichiers ou des dossiers dans le dépôt
III-D. Visionner les fichiers dans le dépôt
III-E. Un checkout des fichiers dans le dépôt
III-F.
Comparer les fichiers « checked out » et vos
fichiers
III-G.
Visionner la révision d'un fichier dans un diagramme
III-H. Corollaire
IV. Rapport qualité/prix
V. Conclusion
VI. A propos de Perforce
I. Présentation
I-A. Perforce SCM
Perforce est un outil de gestion de configuration
logicielle construit autour d'une architecture
client/serveur. Les utilisateurs peuvent accéder au
serveur de Perforce à travers une gamme de logiciel
client. Un tel outil doit être utilisé dans le
processus de développement de logiciels, Perforce
est là pour répondre aux attentes des développeurs.
I-B. Gestion de configuration
La gestion de configuration (tout court) est un
terme utilisé non seulement en informatique mais
dans les autres domaines à savoir en aéronautique,
en automobile, en construction navale, en armement,
etc. En informatique surtout en développement de
logiciels, elle est employée de manière à stocker et
tracer les différentes versions ou révisions de
toute information destinée à être utilisée par un
système (matériel, logiciel, document, donnée
unitaire, etc.). Il existe de nombreux logiciels de
gestion de configuration commerciaux, payants ou
gratuits; Perforce est payant mais personnellement,
je trouve qu'il vaut bien son prix.
Pourquoi la gestion d'une configuration logicielle
est-elle si vitale? Il est indispensable d'utiliser
un SCM si on travaille à plusieurs sur un même
projet, on peut facilement fusionner les
modifications et gérer les différentes versions d'un
projet. Par exemple, un logiciel de gestion de
versions va agir sur une arborescence de fichiers
afin de conserver toutes les versions des fichiers,
ainsi que les différences entre les fichiers. Ainsi,
les développeurs qui travaillent autour d'un
logiciel peuvent suivre toute évolution du code
source. La gestion de versions n'est alors qu'une
partie de Perforce!
II. Détails de Perforce
II-A. Plates-formes
Perforce peut fonctionner sur de nombreux types de
systèmes d'exploitation:
- Microsoft Windows ;
- Linux ;
- Sun Solaris ;
- Mac OS X ;
- FreeBSD x86 ;
-
etc
.
II-B. Serveur Perforce
|
Comme dit auparavant, Perforce travaille
autour d'une architecture client/serveur
basée sur le protocole TCP/IP.
L'application serveur sera hébergée sur
un hôte central et les clients peuvent
se trouver n'importe où, que ce soit
dans un réseau local ou dans les coins
réculés du globe par voie Internet.
Pour le serveur, aucun matériel spécial
n'est exigé, autre que le stockage pour
dépôt et les fichiers de la base de
données. La clé de sa performance reste
fermement sur trois piliers. Une base de
données relationnelle avec soin accordée
assure des temps de la réponse rapides.
Son protocole réseau efficace minimise
les temps d'attente. Le modèle de
gestion de configuration logicielle
avancé Perforce est géré par la base de
données. Tous les utilisateurs ont accès
au même modèle, où qu'ils se trouvent et
quelle que soit la plate-forme client
installée.
|
II-C. Client Perforce
On parlera ici de P4V ou "Perforce Visual Client",
le logiciel client à interface graphique de Perforce
qui fonctionne sur diverses plates-formes, cette
interface est la même sur tous les systèmes
d'exploitation supportés.
P4V permet de connecter votre ordinateur au serveur
Perforce et de déplacer vos fichiers et vos dossiers
entre les dépôts et votre espace de travail
(répertoire de travail se situant sur l'ordinateur
client utilisant P4V).
II-D. Autres composants
Le serveur Perforce constitue le composant principal
et vital de ce système car c'est en fait lui qui est
vraiment payant. Comme client, il suffit d'utiliser
Perforce Visual Client qui est téléchargeable
gratuitement sur le site de Perforce.
Les autres composants de Perforce sont : P4Web,
P4Win et Perforce Defect Tracking Gateway (P4DTG).
Prenons P4Web, il s'agit du client web de Perforce.
Ce dernier fournit un accès aux dépôts de Perforce
c'est à dire à l'historique des versions de
fichiers, les fichiers ajoutés et les fichiers
supprimés dans un espace de travail à partir d'un
navigateur web. De plus, on peut utiliser un flux
RSS pour être alerté des dernières mises à jour.
III. Démarrer pour la première fois avec Perforce
Il s'agit de vous montrer l'installation et le lancement
de Perforce. Ici, le test se fait sur une plate-forme
Windows (2000, XP, Server 2003) mais le lancement se
ressemble aussi sur les autres plates-formes. Il faut
remarquer que Perforce Software fournit une assistance à
ses clients qui n'utilisent encore que la version
d'évaluation.
L'installation se fait en lançant
perforce.exe
pour une plate-forme Windows. Choisissez l'option
"Perforce Administrator Install (Typical)"

Entrer le nom de machine et le port à utiliser par le serveur

Entrer le nom d'utilisateur ou le créer

Choisir l'emplacement de l'espace de travail local

Chargement initial des fichiers
Ce serveur est un service Windows donc n'a pas
d'interface visuelle. On peut le lancer à partir des
Outils d'administration>Services (services.msc)
, le nom du service correspondant est
Perforce
, on peut également lancer le serveur
Perforce Proxy
qui est utile pour un groupe de travail oeuvrant dans
divers coins du globe.
Comme logiciel client, il faut se procurer de Perforce
Visual Client (p4v) et l'installer. Lorsqu'on lance le
client, on s'attend à une interface simple et agréable.
N'oublions pas que Perforce a été conçu par des
ingénieurs logiciels pour des ingénieurs logiciels.
C'est pourquoi sa conception élégante, sa rapidité et sa
technologie de pointe attirent ceux qui souhaitent
utiliser un système gestion de configuration logicielle
inégalé.
|
Il ne faut pas oublier de créer un
utilisateur lorsque vous l'utilisez pour la
première fois ; votre adresse mail sera
aussi utile. Demandez à l'administrateur
Perforce les informations sur l'adresse IP
ou le nom du serveur. Par défaut, le port
utilisé est le
1666
. Pour voir la liste des utilisateurs et des
espaces de travail disponibles, cliquez sur
Browse
.
Outre l'interface fenêtrée, le client
Perforce peut être aussi utilisé en mode
ligne de commande (p4).
|
|
Après avoir été authentifié à l'ouverture
d'une connexion, on arrive à l'écran
principal. Au premier abord, une boîte de
message alerte la fin de la durée du ticket
de l'utilisateur, cela dure 12 heures (11
heures 59) en général.
Naviguer sur cette fenêtre s'avère facile.
Le panneau
Files in Folder
permet de lister les fichiers contenus dans
les dossiers que vous visionnez à gauche
(onglet Depot ou Workspace) ; l'affichage
peut se faire en listes, en détails, en
icônes par le menu
View > Show Files As
.
Les onglets du panneau droit "Files in
Folder" permet par contre d'afficher les
spécifications de Perforce comme les
informations sur les fichiers.
L'un des panneaux qui m'ont vraiment
intéressés, est le panneau
Log
ou journal qui affiche les messages
d'erreurs et de résultats mais surtout
l'affichage des commandes
p4
: un moyen d'apprendre Perforce en ligne de
commande car les utilisateurs senior de ce
logiciel sont le plus souvent des adeptes de
la ligne de commande. Pour avoir plus
d'informations sur l'utilisation de la ligne
de commande, cliquez
ici.
|
III-A. Configurer votre espace de travail
Pour définir un nouvel espace de travail,
sélectionner le menu
Connection > Workspace
mais si vous voulez seulement changer les propriétés
d'un espace de travail existant, sélectionner
Connection > Edit Current Space
…
III-B. Dépôt
C'est un répertoire où sont archivés les fichiers
des différents projets, ainsi que les informations
relatives à chaque version. Il est souvent appelé
« repository » dans les autres logiciels de gestion
de configuration.
III-C.
Ajouter des fichiers ou des dossiers dans le dépôt
Il se peut qu'avant d'avoir utilisé un système de
gestion de configuration logicielle, vous avez
travaillé dans un espace de travail (un ensemble de
fichiers et de dossiers contenant votre projet) pour
développer un projet informatique. Il faut alors
migrer ce dernier vers le dépôt pour suivre son
évolution et faciliter sa modification.
Il suffit d'aller dans le panneau droit onglet
Workspace
, naviguer vers le dossier ou le fichier à copier
vers le dépôt, choisir
Mark for add
dans le menu contextuel obtenu par le clic droit.
III-D. Visionner les fichiers dans le dépôt
Dans le panneau droit onglet
Depot
, parcourir vers le fichier ou le dossier que vous
voulez visionner.
Pour consulter les versions récentes ou les
anciennes versions, il suffit de sélectionner
respectivement
Get Latest Revision
ou
Get Revision
sur le menu contextuel obtenu dans l'onglet Depot.
III-E. Un checkout des fichiers dans le dépôt
Il s'agit d'obtenir une copie locale da la dernière
version d'un fichier du dépôt.
Choisir le fichier dans l'onglet de dépôt.
Cliquer
Check out
dans le menu contextuel. Après le checkout, le
fichier est affecté d'une marque de coche rouge
indiquant qu'il a été « checked out », c'est-à-dire
que le fichier dans le dépôt a été effectivement
copié.
On peut alors tracer l'historique des changements
par le menu
View > Pending Changelists
par l'icône en triangle rouge sur la barre d'outils
; le panneau droit sera alors attribué à cet
affichage. On peut aussi cliquer tout simplement sur
l'onglet
Pending
dans le panneau droit.
Une fois que les fichiers du dépôt sont copiés dans
votre espace de travail après le checkout, on peut y
travailler et éventuellement les modifier. Ici, j'ai
travaillé en local pour travailler sur le
développement d'un petit programme de démineur.
III-F.
Comparer les fichiers « checked out » et vos
fichiers
Cela se fait par l'outil
P4Merge
qui est livré avec Perforce Visual Client (P4V).
III-G.
Visionner la révision d'un fichier dans un diagramme
Perforce est un outil puissant surtout en matière
d'interface graphique car il permet de faire
abstraction totale aux lignes de commande. Ainsi, on
peut voir en détails l'historique de révision de
fichier dans un diagramme comme l'image qui suit :
III-H. Corollaire
Le client visuel Perforce fournit une multitude de
fonctions intéressantes qui ne sont pas disponibles
en mode lignes de commande, cela le différencie des
autres SCM plus connus à cause de leur gratuité à
savoir CVS, Subversion, etc. Le menu contextuel sur
l'explorateur du dépôt et de l'espace de travail
permet d'exécuter les fonctions de base d'un SCM
comme le checkout, l'update, le commit, etc. :
Il ne me reste qu'à vous inviter à le tester. Si
vous avez utilisé jusqu'à aujourd'hui les SCM
payants comme Visual SourceSafe de Microsoft ou
StarTeam de Borland, essayez Perforce car il est
disponible en version gratuite d'évaluation. Faites
vous-mêmes la comparaison, j'aimerais vous préciser
que Perforce Software Inc. est une équipe
d'ingénieurs travaillant uniquement pour le
développement de ce système de gestion de
configuration, d'où la grande qualité du produit.
IV. Rapport qualité/prix
Perforce est payant mais ce n'est pas son inconvénient
car il offre beaucoup plus de possibilités que les
autres solutions de gestion de configuration existantes.
Les utilisateurs apprécient avant tout la rapidité et le
faible prix de Perforce.
Il est à remarquer que dès la page d'accueil du site web
de ce produit, on voit au slogan suivant :
(Perforce, le système de gestion de configuration
logicielle rapide)
Et ce n'est pas du bluff !!
De plus, on peut télécharger gratuitement tous les
logiciels Perforce sauf le serveur Perforce. Il faut
souscrire une licence pour le serveur pour accepter plus
d'utilisateurs et un nombre illimité de postes clients.
Pour en savoir plus sur la licence d'utilisation de
Perforce, aller à l'adresse
FAQ sur la licence.
Perforce est actuellement commercialisé à seulement 800$
par utilisateur. Le coût comprend l'assistance et les
mises à jour. En fait, il y a donc un service avant et
après vente, du rarement vu en informatique.
V. Conclusion
En guise de conclusion, je pense que Perforce est un
outil indispensable pour les professionnels du
développement logiciel. En effet, tout développement de
logiciel requiert des outils de gestion de configuration
logicielle (GCL) pour gérer les modifications apportées.
Non seulement ce logiciel vous permettra de gagner
beaucoup de temps, mais il vous permet surtout de
travailler méthodiquement afin d'être plus productif.
Un point noir regrettable est qu'il est en version
anglaise, le site web correspondant l'est aussi, seules
quelques pages sont écrites en d'autres langues comme le
français, l'allemand, le japonais... Il ne devrait pas y
avoir beaucoup de soucis car tout de même il est très
facile d'utilisation.
Rappelons que la version du serveur en cours est le
2008.2 ainsi que pour le client Perforce, toutes deux
disponibles en téléchargement pour évaluer Perforce
gratuitement et sans obligation, apportant des
améliorations aux outils clients tels que le Client
Windows Perforce, le Client Web Perforce, le Plug-in
Perforce pour Windows Explorer et le Plug-in FTP
Perforce. (Voir les
release notes)
De nombreuses grandes sociétés utilisent actuellement le
système GCL Perforce (en anglais Perforce SCM, System
Configuration Management) allant d'une petite entreprise
à la multinationale citons Barra, Electronic Arts,
National Instruments, Symantec, etc.
VI. A propos de Perforce
Perforce Software Inc.
a été créé en 1995 dans l'unique but de développer et de
commercialiser le système rapide de gestion de
configuration logicielle Perforce. L'équipe de Perforce
Software consacre alors tous leurs efforts dans le
développement et la maintenance de ce produit dans le
but de satisfaire les clients qui sont en général des
éditeurs de logiciels mais aussi finance - banque -
assurance, secteur pharmaceutique. En effet, Tout
développement de logiciel requiert des outils de gestion
de configuration logicielle pour gérer les modifications
apportées lorsque vous développez vos logiciels.
Perforce Software Inc. est basée à Alameda en
Californie, cette société vend cet outil dans le monde
entier : Internet reste l'outil de prédilection de
Perforce Software pour la vente et la distribution de
ses produits, il assure aussi le service d'assistance à
la clientèle par Internet. Elle possède des filiales
dans d'autres pays comme le Royaume Uni, l'Allemagne, la
France, l'Inde et le Japon.


Copyright © 2007 Developpez.com. Aucune reproduction, même partielle, ne peut être faite
de ce site et de l'ensemble de son contenu : textes, documents, images, etc
sans l'autorisation expresse de l'auteur.
Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E
de dommages et intérêts. Droits de diffusion permanents accordés à developpez LLC.
Cette page est déposée à la
SACD.