Aide MetaEditor

Intégration des Changements

Intégration des Changements

Un des avantages majeurs du Dépôt MQL5 est la possibilité pour plusieurs utilisateurs de travailler sur les mêmes fichiers.

La possibilité de donner le droit aux autres utilisateurs d'éditer les dossiers dans son dépôt personnel n'est pas encore disponible. Cependant, vous pouvez actuellement travailler avec votre dépôt depuis depuis différents ordinateurs en utilisant le même compte MQL5.community.

Intégrer signifie combiner les changements effectués sur la copie locale des données avec les données qui ont été modifiées en parallèle et sauvées dans le dépôt MQL5.

  • L'intégration ne fonctionne uniquement que pour les fichiers texte avec du code source (mq5, mqh, cpp, h) en ANSI. Les fichiers bmp et wav sont toujours complètement remplacés par les nouvelles versions.
  • Les fichiers de code source sont comparés ligne par ligne. Lorsqu'un conflit survient (par exemple, la même ligne est modifiée à la fois dans le fichier local et dans le fichier du dépôt), l'algorithme d'intégration a pour but de préserver au maximum les changements locaux.

Un Exemple d'Intégration

Considérons le cas typique d'intégration de deux fichiers. Comme mentionné ci-dessus, les fichiers de code source sont comparés ligne par ligne pendant leur intégration. Si un fichier du dépôt contient des lignes qui ne sont pas présentes dans le fichier locales, elles sont ajoutées. Par exemple, un fichier du dépôt contient le code suivant :

Fichier du dépôt

Le même fichier local contient le code suivant :

Fichier local

Après avoir cliqué sur "Mettre à jour Mettre à jour", les fichiers locaux reste inchangés, puisque les changements locaux ont une priorité plus grande. Cependant, si un fichier du dépôt contient le code suivant :

Fichier du dépôt

La ligne "x=0;" serait ajoutée au fichier local, tandis que "return(true);" resterait inchangé :

Fichier local mis à jour

  • Le principe le plus important de l'intégration des changements est que la priorité la plus haute soit donnée aux données locales. L'algorithme cherche à maximiser la préservation des changements locaux.
  • Il existe plusieurs types de conflits possibles durant l'intégration. Dans cette section, nous n'avons considéré qu'une seule des situations les plus courantes. L'algorithme d'intégration des changements est complexe et fournit une approche compréhensive des fichiers analysés. Plus d'informations concernant l'outil d'intégration sont disponibles dans le livre sur Subversion.