Konflikte zwischen Changeset-Commits

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 2 Minuten Lesedauer
  • Die Servicebereitstellung kann mehrere Teams umfassen, die gleichzeitig an Konfigurationsdaten arbeiten, mit potenziell Hunderten von Konfigurationsänderungen pro Tag. Da Changes in Konflikt mit früheren Changes eines anderen Benutzers stehen können, verwaltet CDM Commits und Snapshots, um in Konflikt stehende Commits zu blockieren. Sie werden über Changeset-Konflikte benachrichtigt, damit Sie sie lösen können.

    Wichtig:
    Ab dem Release Washington DC wird DevOps Config auf den Übergang in den Zustand „Veraltet“ vorbereitet. Es wird ausgeblendet und in neuen Instanzen nicht mehr installiert, aber weiterhin unterstützt. Weitere Informationen finden Sie im Artikel Deprecation Process [KB0867184] (Abkündigungsprozess) in der Now Support Knowledge Base.

    Wenn ein Konflikt auftritt

    Jedes Mal, wenn Sie versuchen, ein Changeset zu committen, stellt das System fest, ob Konflikte mit anderen früheren Commits bestehen. Wenn das System einen Konflikt meldet, können Sie versuchen, einige der Änderungen beizubehalten oder alle in Konflikt stehenden Änderungen zu verwerfen und mit einem neuen Changeset zu beginnen. Um die Neuerstellung Ihrer Arbeit zu erleichtern, können Sie daher größere Änderungen in einen Texteditor kopieren, bevor Sie ein in Konflikt stehendes Changeset schließen.

    So vermeiden Sie Konflikte

    Befolgen Sie diese Vorschläge, um Konflikte zu vermeiden:
    • Versuchen Sie, ein Changeset für einen kurzen Zeitraum offen zu halten. Wenn Sie Nachforschungen durchführen müssen, schließen Sie das Changeset, und starten Sie ein neues Changeset, sobald Sie die Informationen haben.
    • Koordinieren Sie Ihre Codebearbeitungsaufgaben mit Kollegen. Auf diese Weise können Sie vermeiden, dass dasselbe Configuration Item gleichzeitig aktualisiert wird.

    Arten von Konflikten

    In jedem der folgenden Beispiele für einen identifizierten Konflikt ist das beschriebene „Element“ das Configuration Data Item (CDI) in Ihrem Changeset. Ein anderer Anwender hat Changes committet, mit denen Ihre Changes in Konflikt stehen.
    Veraltete Daten in Ihrem Arbeits-Changeset
    • Der Wert des Elements wurde in einem anderen Changeset geändert.
    • Das Element ist nicht mehr in einer Sammlung enthalten und kann auch nicht in einem anderen Changeset bereitgestellt werden.
    • Datenbeschädigung durch eine falsche Änderung in der Datentabelle: Das neu hinzugefügte Element in Ihrem offenen Changeset wurde in der Datentabelle so geändert, dass es fälschlicherweise auf eine frühere Version verweist. Das Element in Ihrem offenen Changeset wurde durch eine Änderung in der Datentabelle ersetzt. Das aktualisierte oder gelöschte Element in Ihrem offenen Changeset wurde in der Datentabelle fälschlicherweise so geändert, dass es nicht auf die vorherige Version verweist.
    Übergeordnetes Element geändert
    Das Element ist verwaist, da sein übergeordnetes Element in einem anderen Changeset gelöscht oder umbenannt wurde.
    Übergeordnet/Untergeordnet-Beziehung geändert
    Neue Elemente wurden in einem anderen Changeset hinzugefügt, während Sie Änderungen am übergeordneten Datenelement vorgenommen haben.
    Geänderte Referenzen
    • Das Element wurde in eine Sammlung aufgenommen oder in einem anderen Changeset bereitgestellt.
    • Das Element kann nicht gelöscht werden, da es in einer Sammlung enthalten oder in einem anderen Changeset bereitstellbar ist.
    Duplikat
    Ein Element mit demselben Namen ist bereits vorhanden.
    Ungültige Includes
    • Die Komponente oder Sammlung, auf die sich das Include bezieht, wurde in einem anderen Changeset gelöscht.
    • Die Komponente oder Sammlung, auf die sich das Include bezieht, wurde in einem anderen Changeset umbenannt.
    • Ein untergeordnetes Element der einzubeziehenden Komponente ist bereits in einem anderen Changeset in der Sammlung enthalten.