Versionskontrolle: Unterschiede

Zusammenführen von Unterschieden zwischen Zweigen wird nicht empfohlen, da es zu ungültigen XML-Dateien führen kann, die nicht mehr in die Automation Engine importiert werden können. Als Hilfestellung für die manuelle Zusammenführung stellt dieses Modul einen Bericht zur Verfügung, der die Unterschiede zwischen zwei Zweigen oder Marken auf zeigt.

Bezeichnung

Name

vcs.Diff

Aliase

GitDiff, pm.PackageDiff

Konfiguration

Gruppe: Optionen

1. Quelltyp (source1-type)

Definiert ob die 1. Quelle ein Zweig oder eine Marke ist

Mögliche Werte: Zweig (branch), Marke (tag)

1. Quellname (source1-name)

Definiert den Namen der 1. Quelle, welcher ein Zweigname oder eine Marke ist

2. Quelltyp (source2-type)

Definiert ob die 2. Quelle ein Zweig oder eine Marke ist

Mögliche Werte: Zweig (branch), Marke (tag), Arbeitskopie (working-copy)

2. Quellname (source2-name)

Definiert den Namen der 2. Quelle, welcher ein Zweigname oder eine Marke ist

(source2-connection)

Mögliche Werte: <definierte b4A Verbindungen>

Objekt für strukturierte Dokumentation (structured-docu)

Wenn angegeben, dann werden die Informationen in der strukturierten Dokumentation des Objektes gespeichert

Verbindung (structured-docu-connection)

Wenn angegeben, dann wird das Objekt für die strukturierte Dokumentation in der Verbindung genutzt.

Mögliche Werte: <definierte b4A Verbindungen>

Name der strukturierten Dokumentation (structured-docu-name)

Definiert den Namen des Reiters der strukturierten Dokumentation, die verwendet werden soll. Ist der Wert leer, dann wird die Erste genutzt.

strukturierte Dokumentation zuvor leeren (structured-docu-reset)

Wenn gesetzt, dann wird die strukturierte Dokumentation des Objektes zuvor geleert

Gruppe: Versionskontrollsystem

Package (package)

Name des Package, dass eingecheckt werden soll

VCS-Benutzername (vcs-username)

Benutzername für den Repositoryzugriff

VCS-Passwort (vcs-password)

Passwort für den Repositoryzugriff

VCS-Passwortdatei (vcs-password-file)

Um das Passwort auf der Kommdozeile zu verstecken, kann diese Option genutzt werden und dass Passwort in einer Datei übergeben werden

Verschlüsselungsgeheimnis (vcs-password-key)

Definiert das Geheimnis für die Passwortverschlüsselung

Mögliche Werte: Server (server), AE-Script (ae-script)

../../_images/vcs-diff-options.png

Ausgabeformat XML-Vatriable

Der Bericht über einen Vergleich sieht als XML-Dokument wie im folgenden Beispiel aus.

<?xml version="1.0" encoding="UTF-8"?>
<best4Automic>
    <vcs>
        <difference package="TESU.B4A_VCS">
            <source name="4.5" type="branch"/>
            <destination name="4.5" type="working-copy"/>
            <status>
                <added number="2"/>
                <removed number="0"/>
                <changed number="1"/>
            </status>
            <details>
                <added>
                    <item name="TEST_SUITE/TESU.B4A_VCS/CONFIG/TESU.B4A_VCS.VARA@XML.DIFF.VARA"/>
                    <item name="TEST_SUITE/TESU.B4A_VCS/SOURCE/TESU.B4A_VCS.SCRI.PUSH_TEST3.SCRI"/>
                </added>
                <removed/>
                <changed>
                    <item name="TEST_SUITE/TESU.B4A_VCS/SOURCE/TESU.B4A_VCS.SCRI.PUSH_TEST2.SCRI">diff --git a/TEST_SUITE/TESU.B4A_VCS/SOURCE/TESU.B4A_VCS.SCRI.PUSH_TEST2.SCRI b/TEST_SUITE/TESU.B4A_VCS/SOURCE/TESU.B4A_VCS.SCRI.PUSH_TEST2.SCRI
index 419ab12..a530988 100644
--- a/TEST_SUITE/TESU.B4A_VCS/SOURCE/TESU.B4A_VCS.SCRI.PUSH_TEST2.SCRI
+++ b/TEST_SUITE/TESU.B4A_VCS/SOURCE/TESU.B4A_VCS.SCRI.PUSH_TEST2.SCRI
@@ -86,7 +86,8 @@
    &lt;/ROLLBACK&gt;
    &lt;SCRIPT mode="1" state="1"&gt;
        &lt;MSCRI&gt;
-            &lt;![CDATA[:p "hello world"]]&gt;
+            &lt;![CDATA[:p "hello world"
+:p "hello world"]]&gt;
        &lt;/MSCRI&gt;
    &lt;/SCRIPT&gt;
    &lt;DOCU_Docu state="1" type="text"&gt;
</item>
                </changed>
            </details>
        </difference>
    </vcs>
</best4Automic>

In dem Dokument sind vier Informationsblöcke enthalten

  • source: Das Original für den Vergleich

  • destination: Die geänderte Version, die mit dem Original verglichen wird

  • status: Zusammenfassung der geänderten, hinzugefügten und gelöschten Objekte

  • details: Details zu den Änderungen der einzelnen Objekte

Beispiel-XPath um die Anzahl der hingefügten Objekte auszulesen

/best4Automic/vcs/difference/status/added/number