MetaEditor Hilfe

Änderungen zusammenführen

Änderungen zusammenführen

Wenn Sie an einem Shared Project in einem Team arbeiten, kann es vorkommen, dass die gleichen Dateien von mehreren Benutzern gleichzeitig bearbeitet werden. Damit solche Änderungen nicht überschrieben werden, bietet der MetaEditor die Funktion zum Zusammenführen von Daten.

Wenn Sie versuchen, eine Datei zu speichern, die bereits von jemandem geändert wurde, fordert Sie MetaEditor auf, sich zuerst die neuesten Änderungen zu holen. Beim Empfang der Änderungen wird versucht, die Daten zusammenzuführen: Änderungen aus dem Speicher werden auf die lokale Datenkopie angewendet und es wird versucht, die aktuellen lokalen Änderungen zu speichern.

  • Das Zusammenführen wird nur auf Textdateien mit dem Quellcode (mq4, mq5, mqh, cpp und h) im ANSI-Format angewendet. Bmp- und wav-Dateien werden immer komplett durch neuere Versionen ersetzt.
  • Quelltextdateien werden zeilenweise verglichen. Wenn Konflikte auftreten (z.B. wird dieselbe Zeile in der lokalen Datei und in der entsprechenden Datei im Repository geändert), zielt der Algorithmus der Zusammenführung darauf ab, die Erhaltung der lokalen Änderungen zu maximieren.

Beispiel einer Zusammenführung

Betrachten wir einen typischen Fall des Zusammenführens zweier Dateien. Wie oben erwähnt, werden beim Zusammenführen Quelltextdateien zeilenweise verglichen. Wenn eine Datei im Speicher die Zeilen enthält, die in der lokalen Datei nicht vorhanden sind, werden diese Zeilen hinzugefügt. Betrachten Sie das folgende Beispiel für das Zusammenführen von zwei Dateien:

Beispiel für das Zusammenführen von zwei Dateien

Nachdem Sie auf Aktualisieren aus dem Speicher Aktualisieren vom Speicher bleiben die lokalen Dateien unverändert, da lokale Änderungen eine höhere Priorität haben. Wenn die Datei des Speichers die neue Zeile "x=0;" enthalten würde, wäre sie hinzugefügt worden, während die Zeile "return(true);" unverändert geblieben wäre:

Beispiel für das Zusammenführen von zwei Dateien

  • Das Hauptprinzip der Zusammenführung ist die höhere Priorität der lokalen Daten. Der Algorithmus versucht, die Erhaltung der lokalen Änderungen zu maximieren.
  • Es gibt viele Arten von Konflikten beim Zusammenführen. In diesem Abschnitt wurde nur eine der häufigsten Situationen betrachtet. Der Algorithmus des Zusammenführens ist komplex und bietet einen umfassenden Ansatz in den Analysedateien. Weitere Informationen über die Zusammenführung finden Sie in einem Buch über Subversion.