Migrationen in Teamumgebungen

Achten Sie beim Arbeiten mit Migrationen in Teamumgebungen auf die Modellaufnahmedatei. Diese Datei kann Ihnen mitteilen, ob die Migration Ihres Teamkollegen sauber mit Ihren zusammenführt oder wenn Sie einen Konflikt beheben müssen, indem Sie ihre Migration erneut erstellen, bevor Sie sie freigeben.

Zusammenführen

Wenn Sie Migrationen von Ihren Teamkollegen zusammenführen, erhalten Sie möglicherweise Konflikte in der Modellaufnahmedatei. Wenn beide Änderungen nicht verknüpft sind, ist die Zusammenführung trivial, und die beiden Migrationen können koexistieren. Sie können beispielsweise einen Zusammenführungskonflikt in der Konfiguration des Kunden-Entitätstyps erhalten, die wie folgt aussieht:

<<<<<<< Mine
b.Property<bool>("Deactivated");
=======
b.Property<int>("LoyaltyPoints");
>>>>>>> Theirs

Da beide Eigenschaften im endgültigen Modell vorhanden sein müssen, führen Sie die Zusammenführung durch Hinzufügen beider Eigenschaften aus. In vielen Fällen kann Ihr Versionssteuerungssystem solche Änderungen automatisch zusammenführen.

b.Property<bool>("Deactivated");
b.Property<int>("LoyaltyPoints");

In diesen Fällen sind Ihre Migration und die Migration Ihres Teamkollegen unabhängig voneinander. Da zuerst eine dieser Elemente angewendet werden könnte, müssen Sie keine zusätzlichen Änderungen an Ihrer Migration vornehmen, bevor Sie sie mit Ihrem Team teilen.

Beheben von Konflikten

Manchmal tritt beim Zusammenführen des Modellaufnahmemodells ein wahrer Konflikt auf. Beispielsweise haben Sie und Ihr Teamkollege möglicherweise die gleiche Eigenschaft umbenannt.

<<<<<<< Mine
b.Property<string>("Username");
=======
b.Property<string>("Alias");
>>>>>>> Theirs

Wenn Sie diese Art von Konflikt auftreten, lösen Sie sie durch erneutes Erstellen Ihrer Migration. Folgen Sie diesen Schritten:

  1. Abbrechen des Seriendrucks und Rollbacks in Ihr Arbeitsverzeichnis vor dem Zusammenführen
  2. Entfernen Sie Ihre Migration (aber behalten Sie Ihre Modelländerungen)
  3. Zusammenführen der Änderungen Ihres Teamkollegen in Ihr Arbeitsverzeichnis
  4. Erneutes Hinzufügen Ihrer Migration

Danach können die beiden Migrationen in der richtigen Reihenfolge angewendet werden. Die Migration wird zuerst angewendet, indem Sie die Spalte in Alias umbenennen, nachdem Ihre Migration sie in Benutzername umbenannt.

Ihre Migration kann sicher für den Rest des Teams freigegeben werden.