Versionsverwaltung für den Modellrepository-Dienst
Sie können ein Modellrepository mit einem Versionskontrollsystem integrieren, das Sie in Ihrer Organisation verwenden. Ein Versionskontrollsystem schützt Modellrepository-Objekte vor dem Überschreiben in einem Team, in dem mehrere Entwickler am selben Projekt arbeiten. Ein Modellrepository kann nur eine Instanz eines Versionskontrollsystems verwenden. Sie können das Modellrepository in das Perforce-, Subversion- oder Git-Versionskontrollsystem integrieren.
Ein Versionskontrollsystem gestattet jeweils einem Benutzer, ein Objekt auszuchecken, zu bearbeiten und zu speichern. Wenn Sie ein Objekt speichern, wird das Objekt im Modellrepository gespeichert. Nach dem Einchecken des Objekts wird im Versionskontrollsystem eine Version erstellt. Das Versionskontrollsystem verwaltet einen Verlauf aller Versionen. Sie können nur die aktuelle Version des Objekts bearbeiten. Die anderen Versionen des Objekts können nur im schreibgeschützten Modus angezeigt werden. Sie können einen Rollback auf eine frühere Version durchführen oder einem anderen Benutzer den ausgecheckten Status von Objekten neu zuweisen. Ein Versionskontrollsystem schützt ein Modellrepository-Objekt vor unerwünschten Updates, da es verhindert, dass mehrere Benutzer gleichzeitig dasselbe Objekt bearbeiten.
Perforce und Subversion sind zentrale Versionskontrollsysteme. Es kann zu Datenverlusten kommen, wenn der Server des Perforce- oder Subversion-Versionskontrollsystems unerwartet heruntergefahren wird.
Git ist ein verteiltes Versionskontrollsystem. Wenn Sie ein Objekt einchecken, checkt das Git-Versionskontrollsystem das Objekt ein. Es speichert eine Kopie im Git-Remote-Repository und im lokalen Git-Repository. Wenn kein Zugriff auf das Git-Repository möglich ist oder es unerwartet heruntergefahren wird, können Sie auf das lokale Git-Repository zugreifen, um alle Versionen anzuzeigen und die aktuelle Version des Objekts zu bearbeiten.
Bei Auswahl des Git-Versionskontrollsystems können Sie die folgenden Komponenten konfigurieren:
- Git-Remote-Repository
- Sie benötigen Zugriff auf das Remote-Repository auf dem Git-Server. Zum Konfigurieren des Versionskontrollsystems benötigen Sie die URL, den Benutzernamen und das Passwort des Remote-Repositorys. Sie können mithilfe des HTTP- oder HTTPS-Protokolls auf das Git-Remote-Repository zugreifen.
- Lokales Git-Repository
- Erstellen Sie ein Verzeichnis auf dem Computer, auf dem der Modellrepository-Dienst gehostet wird, der als lokales Git-Repository dienen soll.
- Das Verzeichnis muss folgende Anforderungen erfüllen:
- - Zugriff auf alle Clientcomputer.
- - Zugriff auf die Backup-Knoten für den Modellrepository-Dienst nach der Aktivierung der Hochverfügbarkeit.
- - Unterstützung für NFS-, FAT32- und NTFS-Dateisysteme.
- - Eindeutiger Name.
- - Berechtigungen zum Lesen, Schreiben und Ausführen.
Wenn das Modellrepository in ein Versionskontrollsystem integriert ist, können Sie überarbeitete Objekte einchecken, das Auschecken von Objekten rückgängig machen und ausgecheckte Objekte einem anderen Benutzer zuweisen.
HINWEIS: Wenn das Modellrepository mit einem Versionskontrollsystem integriert ist, können Sie das Modellrepository nicht für die Massenerfassung verwenden.
Konfigurieren und Synchronisieren eines Modellrepositorys nach dem Ändern der Versionierungseigenschaften
Sie können die Versionskontrolle aktivieren, Versionierungseigenschaften konfigurieren und anschließend das Modellrepository mit dem Versionskontrollsystem synchronisieren. Nach der Konfiguration der Versionierung und der Synchronisierung des Modellrepositorys mit dem Versionskontrollsystem beginnt das Versionskontrollsystem mit der Speicherung des Versionsverlaufs.
Die folgende Abbildung zeigt den Vorgang der Konfiguration, Synchronisierung und erneuten Synchronisierung des Modellrepositorys mit einem Versionsverwaltungssystem:

- 1Konfigurieren Sie die Versionierungseigenschaften und stellen Sie den Modellrepository-Dienst wieder her.
- 2Synchronisieren Sie den Inhalt des Modellrepositorys mit dem Versionskontrollsystem.
- 3Ändern Sie optional den Typ des Versionsverwaltungssystems.
- aFür Perforce können Sie den Host, die Portnummer, den Benutzernamen oder das Passwort ändern.
- bFür SVN können Sie die URL, die Portnummer, den Benutzernamen oder das Passwort ändern.
- cFür Git können Sie den Dateipfad des lokalen Git-Repositorys, die URL des Git-Remote-Repositorys, den Benutzernamen oder das Passwort ändern.
Nach dem Ändern der Versionierungseigenschaften können Sie den Versionskontrollverlauf beibehalten oder verwerfen:
- aBehalten Sie den Versionskontrollverlauf bei. Kopieren Sie Inhalt aus dem lokalen Repository in das neue lokale Repository.
- bVerwerfen Sie den Versionskontrollverlauf.
- 4Stellen Sie den Modellrepository-Dienst wieder her.
- 5Führen Sie eine erneute Synchronisierung des Modellrepository-Inhalts mit dem Versionskontrollsystem durch.
Sie können diese Aufgaben über die Befehlszeile oder das Administrator Tool ausführen.
HINWEIS: Wenn Sie die Eigenschaften des Modellrepositorys ändern, müssen Sie den Modellrepository-Dienst wiederherstellen, damit die Änderungen übernommen werden. Wenn Sie das Versionskontrollsystem aktivieren oder eine Versionierungseigenschaft ändern, steht das Modellrepository erst zur Verfügung, wenn Sie es synchronisieren.
Synchronisieren eines Modellrepositorys mit einem Versionsverwaltungssystem
Bevor Sie das Modellrepository mit dem Versionsverwaltungssystem synchronisieren, konfigurieren Sie die Versionseigenschaften und stellen Sie den Modellrepository-Dienst wieder her, damit die Änderungen übernommen werden. Synchronisieren Sie anschließend den Inhalt des Modellrepositorys mit dem Versionsverwaltungssystem.
HINWEIS: Während der Synchronisierung ist das Modellrepository nicht verfügbar.
1Weisen Sie Modellrepository-Benutzer an, ihre Änderungen zu speichern und Repository-Objekte zu schließen.
2Wählen Sie auf der Registerkarte Verwalten die Ansicht Dienste und Knoten aus.
3Wählen Sie das Modellrepository für die Synchronisierung mit dem Versionsverwaltungssystem aus.
4Klicken Sie auf Aktionen > Mit Versionsverwaltungssystem synchronisieren.
5 Klicken Sie auf OK.
Der Modellrepository-Dienst kopiert den Inhalt des Repositorys in das Verzeichnis des Versionsverwaltungssystems. Während der Synchronisierung ist das Modellrepository nicht verfügbar.
Nach Abschluss der Synchronisierung ist die Versionierung für die Modellrepository-Objekte aktiviert. Alle Modellrepository-Objekte werden in das Versionsverwaltungssystem eingecheckt. Benutzer können Objekte auschecken, einchecken, den Versionsverlauf anzeigen und vorherige Versionen abrufen.
Nach der Synchronisierung des Modellrepositorys mit dem Versionsverwaltungssystem kann die Integration nicht mehr deaktiviert werden.
Verwaltung von versionierten Objekten
Wenn ein Entwickler für das Einchecken eines ausgecheckten Objekts nicht verfügbar ist, können Sie den ausgecheckten Status eines Objekts auflisten und dann rückgängigmachen oder erneut zuweisen.
Sie können von Benutzern gesperrte oder ausgecheckte Objekte anzeigen. Sie können gesperrte Objekte auswählen und entsperren, sodass ein anderer Benutzer diese bearbeiten kann. Sie können ausgecheckte Objekte auswählen und das Auschecken rückgängigmachen oder das ausgecheckte Objekt einem anderen Benutzer zuweisen.
Sie können die folgenden Vorgänge durchführen:
- Ausgecheckte Objekte auflisten.
- Sie können die Objekte, die aus dem Modellrepository ausgecheckt wurden, auflisten. Sie können die Liste nach dem Zeitpunkt filtern, an dem ein Benutzer das Objekt ausgecheckt hat. Dies kann durchgeführt werden, um die Entwickler der einzelnen Objekte zu identifizieren.
- Ein Objekt einchecken.
- Sie können jedes Objekt, das aus dem Modellrepository ausgecheckt wurde, wieder einchecken.
- Das Auschecken eines Objekts rückgängigmachen.
- Wenn ein Entwickler ein Objekt aus dem Modellrepository ausgecheckt hat und für das Einchecken nicht zur Verfügung steht, können Sie das Auschecken rückgängigmachen. Wenn Sie das Auschecken eines von einem Benutzer bearbeiteten Objekts rückgängig machen, gehen die Änderungen verloren.
HINWEIS: Wenn ein Benutzer ein ausgechecktes Objekt verschoben hat und Sie das Ausschecken rückgängig machen, verbleibt es an seinem aktuellen Speicherort und die Versionshistorie wird neu gestartet. Das Rückgängigmachen des Auscheckens führt nicht dazu, dass es an dem Speicherort wiederhergestellt wird, an dem es sich vor dem Ausschecken befand.
- Die Eigentümerschaft des ausgecheckten Objekts erneut zuweisen.
Sie können die Eigentümerschaft eines ausgecheckten Objekts einem anderen Benutzer zuweisen. Dies könnte erforderlich sein, wenn ein Teammitglied seinen Urlaub antritt und noch ausgecheckte Objekte hat.
Wenn der Eigentümer eines ausgecheckten Objekts die Änderungen gespeichert hat, werden diese beim erneuten Zuweisen des Objekts beibehalten. Werden die Änderungen nicht gespeichert, gehen sie beim erneuten Zuweisen des Objekts verloren.
Verwaltung von versionierten Objekten – Beispiel
Sie sind der Modellrepository-Administrator für ein Entwicklungsteam. Eines der Teammitglieder, abcar, ist für längere Zeit unerwartet abwesend. Zum Zeitpunkt der Abwesenheit hatte der Benutzer ausgecheckte Objekte.
Um die ausgecheckten Objekte anderen Teammitgliedern zuzuweisen, führen Sie die folgenden Schritte durch:
- 1Filtern Sie die Liste der ausgecheckten Objekte, um alle Objekte anzuzeigen, die abcar ausgecheckt hat.
- 2Wählen Sie einige Objekte aus und machen Sie das Auschecken rückgängig.
Die Objekte werden in das Modellrepository eingecheckt und die von abcar vorgenommenen Änderungen gehen verloren.
- 3Wählen Sie die verbleibenden Objekte aus und weisen Sie diese dem Benutzer zovar zu.
Alle von abcar vorgenommenen Änderungen bleiben erhalten. Der Benutzer zovar kann mit der Bearbeitung dieser Objekte fortfahren, oder die Objekte ohne zusätzliche Änderungen einchecken. Der Benutzer zovar kann auch das Auschecken der Objekte rückgängigmachen und alle Änderungen von abcar gehen verloren.
Fehlerbehebung bei der teambasierten Entwicklung
Beachten Sie die folgenden Tipps zur Fehlerbehebung, wenn Sie Funktionen mit Bezug auf die teambasierte Entwicklung verwenden.
- Das Versionsverwaltungssystem Perforce kann bestimmte Objekte aufgrund eines Fehlers nicht einchecken, der durch unverhältnismäßig lange Objektpfadnamen verursacht wird.
Aufgrund von Beschränkungen des Windows-Betriebssystems hinsichtlich der Anzahl an Zeichen in einem Dateipfad schlagen Modellrepository-Objekte mit langen Pfad- und Dateinamen beim Einchecken fehl. Die Perforce-Fehlermeldung lautet „Übermittlung abgebrochen“ und gibt an, dass der Dateipfad die interne Längenbeschränkungen überschreitet.
Kürzen Sie zur Umgehung dieses Problem die Verzeichnisnamen im Pfad des Perforce-Depots sowie die Projekt-, Ordner- und Objektnamen im Modellrepository. Kürzere Namen in allen Instanzen führen zu einer Verringerung der Gesamtzahl an Zeichen im Objektpfadnamen.
- Der Vorgang zum Synchronisieren des Modellrepositorys mit dem Versionsverwaltungssystem schlägt fehl.
- Der Versuch, das Modellrepository mit dem Versionsverwaltungssystem zu synchronisieren, schlägt mit einer Fehlermeldung des Versionsverwaltungssystems fehl. Die Fehlermeldung könnte beispielsweise folgendermaßen lauten:
The Repository Service operation failed.
['[RSVCSHARED_01524] Unable to submit changes to the version control system.
Encountered the following error: '4'.']
- Zur Behebung dieses Problems müssen Sie sicherstellen, dass die Einstellungen der Codepage abhängig vom jeweiligen Gebietsschema für das Modellrepository und das Versionsverwaltungssystem kompatibel sind.