Pré. | Proc. |
Présentation Contrôle de Version
Enterprise Architect implémente le Contrôle de Version de votre modèle en exportant les données Paquetage de la base de données du projet vers les fichiers XMI Paquetage , qui sont placés sous Contrôle de Version dans l'application de contrôle de code source. Le format de fichier XMI ne peut pas être fusionné de la même manière que les fichiers texte ordinaires peuvent être fusionnés, c'est pourquoi Enterprise Architect doit appliquer l'édition sérialisée de Version Controlled Paquetages , comme discuté ici.
La solution Verrouiller-Modifier-Déverrouiller
De nombreux systèmes Contrôle de Version utilisent un modèle de verrouillage-modification-déverrouillage pour résoudre le problème des différents auteurs dans une source partagée qui écrasent le travail de l'autre. Dans ce modèle, le référentiel Contrôle de Version permet à une seule personne de modifier un fichier à la fois, et l'accès est géré à l'aide de verrous.
Harry doit verrouiller un fichier avant de pouvoir commencer à y apporter des modifications. Si Harry a verrouillé un fichier, Sally ne peut pas non plus le verrouiller et ne peut donc pas apporter de modifications à ce fichier. Tout ce qu'elle peut faire est de lire le fichier et d'attendre qu'Harry termine ses modifications et libère le verrou. Une fois qu'Harry a déverrouillé le fichier, Sally peut à son tour verrouiller et modifier le fichier.
La solution Copier-Modifier-Fusionner
Subversion, CVS et un certain nombre d'autres systèmes Contrôle de Version utilisent un modèle copier-modifier-fusionner comme alternative au verrouillage. Dans ce modèle, le client de chaque utilisateur contacte le référentiel du projet et crée une copie de travail personnelle - un reflet local des fichiers et répertoires du référentiel. Les utilisateurs travaillent alors simultanément et indépendamment, modifiant leurs copies privées. En temps voulu, les copies privées sont fusionnées en une nouvelle version définitive. Le système Contrôle de Version aide souvent à la fusion, mais c'est finalement à une personne qu'il revient de faire en sorte qu'elle se déroule correctement.
Lorsque le verrouillage est nécessaire
Alors que le modèle verrouiller-modifier-déverrouiller est généralement considéré comme un obstacle à la collaboration, il y a encore des moments où le verrouillage est nécessaire.
Le modèle copier-modifier-fusionner est basé sur l'hypothèse que les fichiers sont contextuellement fusionnables : c'est-à-dire que les fichiers du référentiel sont des fichiers texte basés sur des lignes (tels que le code source du programme). Cependant, pour les fichiers aux formats binaires, tels que les illustrations ou le son, il est souvent impossible de fusionner les modifications conflictuelles. Dans ces situations, il est vraiment nécessaire que les utilisateurs prennent des virages stricts pour modifier le fichier. Sans accès sérialisé, certains utilisateurs finissent par perdre du temps sur des modifications qui sont finalement écrasées.