Gestion de versions

Introduction

La gestion de versions permet aux utilisateurs d’un projet de sauvegarder l’historique des révisions d’un projet Control FPWIN Pro7 dans une base de données spéciale (dépôt du projet) dans la granularité des objets du navigateur. Ce dépôt est la source officielle cohérente d’un projet avec l’historique des états de développement et l’état actuel (révisions). Chaque révision est caractérisée par des modifications cohérentes comparées à la révision précédente. À tout moment, l’historique complet des révisions peut être inspecté, trié, filtré par numéro de révision, date et heure, et commentaire. Il est possible de superviser les modifications, de comparer les révisions les unes aux autres, de recréer des révisions précédentes, d’ajouter des balises et des branches au développement du projet. Les utilisateurs de ce projet créent leur copie de travail en local à partir de la révision en cours du dépôt (extrémité de la branche), apportent des modifications et procèdent à des tests en local. En validant ces modifications et en les appliquant au dépôt du projet, une nouvelle révision est créée, à partir de laquelle les copies de travail des autres utilisateurs pourront être mises à jour. Il en est de même pour toutes les bibliothèques utilisateur du projet sous gestion de versions.

Un projet versionné permet ainsi de modifier des objets dans le même projet ou la même bibliothèque utilisateur pour plusieurs utilisateurs. Le projet ou la bibliothèque utilisateur conventionnels sont répartis et répliqués en une version miroir du projet appelée "copie de travail" qui est sauvegardée dans un dossier versionné séparé. Le fichier projet et sa copie de travail utilisent le même nom et sont connectés à Control FPWIN Pro7. Les deux contiennent les mêmes données de configuration en général mais la copie de travail a une structure d’objets détaillée avec la granularité connue du navigateur et principalement des fichiers lisibles par l’homme contrairement au fichier projet. Cette structure de dossiers et de fichiers est créée pour permettre la gestion de versions et le développement à plusieurs utilisateurs.

La bibliothèque utilisateur et sa copie de travail utilisent le même nom. La connexion des deux est réalisée via la copie de travail de la bibliothèque utilisateur qui est directement dans le dossier "Libraries" de la copie de travail du projet.

De plus, la copie de travail et le projet ou la bibliothèque utilisateur sont automatiquement synchronisés sans interaction visible de l’utilisateur. Dès qu’un objet modifié est sauvegardé dans Control FPWIN Pro7, le fichier de l’objet correspondant est mis à jour instantanément dans la copie de travail correspondante. Si l’utilisateur met à jour sa copie de travail locale avec les dernières modifications enregistrées dans le dépôt du projet ou de la bibliothèque utilisateur, Control FPWIN Pro7 (normalement) reflète les dernières modifications automatiquement dans la bibliothèque utilisateur ou le projet ouvert.

Cependant, transférer de nouvelles données du dépôt du projet ou de la bibliothèque dans la copie de travail en local ("mettre à jour") et appliquer les données modifiées de la copie de travail au dépôt du projet ou de la bibliothèque ("valider") est fait manuellement en dehors de Control FPWIN Pro7 car Control FPWIN Pro7 connaît uniquement les copies de travail (indépendantes du logiciel externe utilisé) et pas le dépôt du projet ou de la bibliothèque ou le logiciel de gestion de versions externe que l’utilisateur a décidé d’utiliser.

Avec un logiciel de gestion de versions séparé, par ex. Apache subversion ou TortoiseSVN (non installé avec Control FPWIN Pro7), les fonctions de gestion de versions peuvent être utilisées pour échanger des données dans les deux sens entre la copie de travail et le dépôt du projet ou de la bibliothèque correspondant. Cependant, cela doit se faire manuellement en dehors de Control FPWIN Pro7. Pour en savoir plus, veuillez consulter l’aide en ligne du logiciel de gestion de versions sélectionné.

Restrictions

Toutes les portions de données séparées d’un projet Control FPWIN Pro7 ne constituent pas un objet indépendant, séparable dans la copie de travail car certaines portions sont trop petites ou ont trop d’interdépendances. Planifiez à l’avance parmi l’équipe travaillant au projet comment gérer des données spéciales telles que les paramètres du projet, en particulier lorsque des mots de passe de sécurité ou la liste des tâches sont utilisés.

Les objets séparables tels que les POU, DUT et tâches sont traités de la façon suivante :

Les objets suivants et leurs sous-nœuds ne sont pas considérés comme séparables car ils dépendent de l’automate sélectionné :

Ils appartiennent et sont représentés par le fichier singleton "Project.asc" pour l’objet racine du projet dans la copie de travail et le dépôt du projet.

L’objet Code programme n’est pas versionné car il change à chaque fois que les autres objets sont modifiés et que le projet est recompilé.

Comprendre le concept de gestion de versions

Afin d’identifier, structurer et séparer les objets séparables dans le dépôt du projet (et la copie de travail en local), les objets (nœuds) dans le navigateur du projet Control FPWIN Pro7 sont affectés à une structure dossier/fichier, ce qui est également le prérequis pour un système de gestion de versions externe.

À chaque fois que l’utilisateur sauvegarde son projet dans Control FPWIN Pro7, les données sont sauvegardées dans cette structure dossier/fichier. C’est également la structure d’un système de gestion de versions lorsqu’un utilisateur souhaite appliquer les modifications de sa copie de travail au dépôt ou mettre à jour sa copie de travail. Cette structure doit contenir au moins toutes les données et informations que l’utilisateur a explicitement ajoutées ou modifiées dans le projet ou la bibliothèque.

À l’inverse, cette structure doit aussi être la source du processus de mise à jour (importation) pour créer ou modifier un projet Control FPWIN Pro7 ouvert avec les bibliothèques utilisateur contenues (qu’elles soient sous gestion de versions ou non).

Lorsque les utilisateurs créent un projet, cette mise à jour est effectuée avec tous les fichiers valides et reconnus de la structure dossier/fichier dans un certain ordre.

Lorsque les utilisateurs modifient ou mettent à jour un projet, l’importation peut également être effectuée de manière incrémentale ou uniquement avec un sous-ensemble de fichiers d’objets séparables ou même un seul fichier, mais dans un projet Control FPWIN Pro7 ouvert. Ceci remplace normalement complètement la révision du même objet dans ce projet.

Différences de traitement des projets versionnés et non versionnés

Les différences suivantes s’appliquent lorsqu’un projet est mis sous gestion de versions :

Réouvrir un projet précédemment versionné

Lorsque la gestion de versions est désactivée pour un projet, la copie de travail n’est pas supprimée. Ainsi, lorsque la gestion de versions est activée à nouveau pour ce projet, Control FPWIN Pro7 supprime la copie de travail et en crée une nouvelle à partir du projet en cours si vous confirmez que l’ancienne copie de travail peut être supprimée.

Modifié le : 2023-11-23Commentaires sur cette pageAssistance téléphonique