Tous les utilisateurs apportent leurs modifications à leur copie de travail respective comme d’habitude dans Control FPWIN Pro7. Les utilisateurs compilent, transfèrent et testent le projet de la copie de travail si nécessaire.
Certaines opérations manuelles supplémentaires sont nécessaires, lorsque les utilisateurs ajoutent, suppriment ou renomment un objet avec Control FPWIN Pro7.
Agir directement sur les dossiers et fichiers de la copie de travail (par ex. éditer, supprimer, créer, coller, renommer) peut détruire la copie de travail et le projet ou la bibliothèque utilisateur !
Dans la copie de travail, veillez à n’utiliser que les commandes du système de gestion de versions externe qui gère l’échange de données entre la copie de travail et le dépôt correspondant, lorsque vous ouvrez un menu contextuel !
Chaque utilisateur peut voir les icônes superposées sur les dossiers et les fichiers dans l’explorateur de fichiers leur indiquant que l’objet/fichier/dossier a été modifié en local par rapport à la révision d’origine qu’ils ont reçue ou validée dans le dépôt du projet ou de la bibliothèque utilisateur.
À tout moment, les utilisateurs peuvent superviser les modifications locales qu’ils ont appliquées à leur copie de travail (objet ou fichier) depuis le moment où ils l’ont reçue du dépôt du projet ou de la bibliothèque (sans fusionner leurs propres modifications) ou lorsqu’ils ont validé leur modifications. Ils peuvent également comparer l’état actuel de leur copie de travail avec n’importe quelle révision du projet ou de la bibliothèque dans le dépôt correspondant (les utilisateurs peuvent également comparer deux révisions dans le dépôt du projet ou de la bibliothèque).
Les utilisateurs inspectent et revérifient leurs modifications avant de les valider dans le dépôt correspondant.
Les utilisateurs peuvent annuler les modifications locales dans leur copie de travail. Ils peuvent le faire par objet ou par fichier (le fichier est la plus petite unité qui peut être annulée), partiellement (au niveau du sous-dossier) ou complètement (l’ensemble du dossier de la copie de travail). L’annulation se fera automatiquement dans la bibliothèque utilisateur ou le projet ouvert.
Les utilisateurs valident leurs modifications sur leur copie de travail dans les dépôts correspondants, par ex. si ou lorsqu’un ou plusieurs autres utilisateurs ont besoin d’objets nouveaux ou modifiés ailleurs.
Le premier utilisateur à valider des modifications peut le faire sans aucune requête du système.
Il peut être demandé au deuxième utilisateur et à tous les utilisateurs suivants souhaitant valider leurs modifications de mettre à jour leur copie de travail avant de pouvoir valider leurs modifications afin que les modifications apportées par d’autres utilisateurs au(x) même(s) objet(s) puissent être fusionnées dans leur(s) objet(s) modifié(s) d’abord.
La fusion n’est exécutée que lorsque la copie de travail est mise à jour à partir du dépôt correspondant. Une fusion exécutée avec succès remplace toujours l’intégralité de l’objet approprié dans le fichier projet. Si la fusion a échoué, il peut y avoir un conflit de modifications sur le même objet, par exemple deux utilisateurs ont utilisés deux valeurs initiales différentes pour la même variable. Dans ce cas, tous les utilisateurs conservent leur propre version jusqu’à ce que le conflit soit résolu. Les objets et fichiers pour lesquels les conflits ne sont pas résolus restent dans le dossier de la copie de travail jusqu’à ce que ces conflits soient résolus.
Si la fusion ne peut pas être exécutée automatiquement, le conflit de fusion qui en résulte doit être résolu manuellement à l’aide des menus et options du système de gestion de versions utilisé.
À chaque validation dans un dépôt du projet ou de la bibliothèque, un commentaire doit être ajouté pour aider les autres utilisateurs à comprendre les modifications validées (ce qui a été modifié et pourquoi, peut-être un code d’erreur ou un numéro de lot de travaux). Le numéro de révision, l’auteur, la date et l’heure sont automatiquement ajoutés et peuvent être vérifiés à tout moment avec les données du journal des objets (historique).
À tout moment, les utilisateurs peuvent consulter l’historique des modifications des objets/fichiers dans le dépôt du projet ou de la bibliothèque à partir de leur copie de travail et voir qui a modifié quoi, quand et pourquoi (si les validations précédentes ont été faites avec des commentaires expliquant pourquoi).
Tous les utilisateurs peuvent mettre à jour leur copie de travail à partir du dépôt correspondant, par ex. s’ils ont besoin ou s’ils veulent intégrer les objets ou les modifications des autres utilisateurs. Un conflit de fusion apparaissant pendant la mise à jour doit être résolu manuellement à l’aide des menus et options du système de gestion de versions utilisé. Après une mise à jour exécutée avec succès ou après la résolution de conflits de fusion, les modifications sont automatiquement intégrées et fusionnées dans la copie de travail des utilisateurs de la façon suivante :
Lorsque le projet est fermé, la copie de travail imbriquée est mise à jour, et le projet et les bibliothèques utilisateur sont actualisés à partir de la copie de travail imbriquée, lorsque l’utilisateur ouvre le projet la fois suivante. La copie de travail (imbriquée) est le maître (local) sur le fichier du projet avec ses bibliothèques utilisateur versionnées !
Lorsque le projet est ouvert, tous les objets modifiés sont mis à jour automatiquement sauf s’ils sont actuellement ouverts dans un éditeur.
Les objets actuellement ouverts dans un éditeur seront mis à jour selon l’état de leurs modifications :
Objets non modifiés : La fusion ferme la fenêtre de l’éditeur et met à jour l’objet. Lorsque l’utilisateur ouvre l’objet à nouveau, il est mis à jour.
Objets modifiés : Un message apparaît et demande à l’utilisateur s’il veut enregistrer les modifications actuelles dans l’éditeur ou les rejeter. Lorsque les modifications actuelles sont rejetées, l’éditeur est fermé et l’objet est mis à jour. Si les modifications actuelles sont enregistrées, l’objet n’est pas mis à jour.
Tous les utilisateurs peuvent revenir à une révision précédente dans le dépôt du projet ou de la bibliothèque en mettant à jour leur copie de travail ou en la restaurant à l’état de cette révision. Ce sera automatiquement reflété dans leur projet ou bibliothèque également. Cependant, les modifications apportées à la copie de travail restaurée ne peuvent pas être appliquées au dépôt puisqu’elles sont basées sur une révision obsolète.