Änderungen der Spezifikationsdatei mit generiertem Quellcode synchronisieren
Mit der Synchronisierungsfunktion können Sie neue Änderungen aus der Spezifikationsdatei in die Chaincode-Quelldateien (Modell und Controller) übertragen. Die Funktion funktioniert sowohl mit TypeScript- als auch mit Go-Projekten.
- Die Synchronisierung ist unidirektional: Sie können Änderungen aus Ihrer Spezifikationsdatei in Ihr Chaincode-Projekt bringen, aber nicht umgekehrt. Änderungen an Ihrem Chaincode-Projekt bleiben unverändert nach dem Synchronisierungsprozess.
- Der Befehl funktioniert nur, wenn das Chaincode-Projekt mit einer Spezifikationsdatei erstellt wurde. Löschen, benennen oder verschieben Sie die Spezifikationsdatei nicht, wenn Sie Änderungen aus der Spezifikationsdatei zukünftig mit dem Quellcode synchronisieren möchten.
- Während der Synchronisierung werden die Chaincode-Dateien im Ordner
lib
automatisch upgegradet. Wenn Sie Änderungen an diesen Bibliotheksdateien vornehmen, sichern Sie die geänderten Dateien, oder verfolgen Sie die Änderungen, die Sie vor der Verwendung der Synchronisierungsfunktion vornehmen, damit Sie diese Änderungen nach der Synchronisierung erneut anwenden können.
- Wählen Sie im Bereich Spezifikationen die Spezifikationsdatei aus, die Sie aktualisiert haben, um den Bereich Spezifikationsdetails zu öffnen. Klicken Sie oben im Bereich auf Chaincodes, um den Bereich zu öffnen, in dem angezeigt wird, welche Chaincodes aus der Spezifikationsdatei generiert wurden.
- Aktivieren Sie das Kontrollkästchen Synchronisieren neben jedem Chaincode, den Sie mit den neuen Änderungen aktualisieren möchten. Sie können mehrere Chaincodes synchronisieren, die gleichzeitig aus einer Spezifikationsdatei generiert wurden. Klicken Sie auf Synchronisieren.
Konflikte auflösen
Da Sie sowohl die Synchronisierungsdateien als auch die Chaincode-Dateien bearbeiten können, können Konflikte auftreten, bei denen die aktualisierte Spezifikationsdatei eine Änderung überschreiben könnte, die Sie an der Chaincode-Datei vorgenommen haben. Wenn Sie versuchen, eine Synchronisierung durchzuführen, wird in diesen Fällen ein Fehler angezeigt, der angibt, dass ein Konflikt vorliegt. Im Bereich Konflikte können Sie diese Fehler beheben.
- Klicken Sie im Bereich Konflikte auf den Namen der Chaincode-Datei, in der die Konflikte vorhanden sind. Die Datei wird in einem Editor geöffnet, wobei die Konflikte hervorgehoben sind.
Im gezeigten Beispiel befindet sich
Marble124
in der Spezifikationsdatei, undMarble123
in der Chaincode-Modelldatei. - Über dem Konflikt befindet sich eine Liste von Optionen. Klicken Sie auf Aktuelle Änderung akzeptieren, um die Spezifikationsdatei außer Kraft zu setzen und die aktuelle Chaincode-Datei zu verwenden. Klicken Sie auf Eingehende Änderung akzeptieren, um die Chaincodedatei außer Kraft zu setzen und die aktuelle Spezifikation zu verwenden.
- Kehren Sie zum Bereich Konflikte zurück. Aktivieren Sie das Kontrollkästchen Synchronisieren neben dem Konfliktnamen, und klicken Sie auf Änderungen bestätigen. Wenn Sie mehrere Konflikte haben, lösen Sie alle Konflikte auf, bevor Sie auf Änderungen bestätigen klicken.