Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Azure DevOps Services
Nach Abschluss der ersten Synchronisierung ist Ihr Repository für die Umstellung bereit. Vollständige Umstellung innerhalb von 21 Tagen nach dem Start der initialen Synchronisierung.
Important
Die Umstellung ist in der Regel in weniger als 30 Minuten abgeschlossen; währenddessen ist das Azure-DevOps-Repository schreibgeschützt. Solange das Repository schreibgeschützt ist, werden Pushes und Aktualisierungen von Pull Requests blockiert, Benutzer können es jedoch weiterhin durchsuchen und klonen. Benachrichtigen Sie alle betroffenen Teams, bevor Sie die Umschaltung planen.
Bevor Sie die Umschaltung planen
Überprüfen Sie die folgenden Bedingungen:
- Inkrementelle Synchronisierungen sind fehlerfrei und aktuell.
- GitHub Repository-Verzweigungen, Tags und Pullanforderungen sind vorhanden und korrekt.
- Alle betroffenen Teams werden benachrichtigt.
- Hartcodierte Azure DevOps URLs in Pipelines, Skripts und Tools werden für updates identifiziert.
Hinweis
Die Planung, Überwachung und Genehmigung des Cutovers erfolgen mithilfe der Azure DevOps CLI. Nach der Umschaltung überprüfen Sie das migrierte Repository im GitHub-Portal. Weitere Informationen finden Sie unter Aufgaben nach der Migration abschließen.
Umschaltung planen
az devops migrations cutover set --org https://dev.azure.com/<org>
--repository-id <repo-guid>
--date "YYYY-MM-DDTHH:MM:SSZ"
Hinweise zur Zeitzone: Fügen Sie für UTC Z an, oder verwenden Sie einen Offset wie -08:00 für die Pazifikzeit. Wenn Sie die Zeitzone weglassen, wird ihre lokale Zeitzone angenommen. Um Mehrdeutigkeit zwischen Teams zu vermeiden, geben Sie Z oder einen expliziten Offset an.
Geplante Umschaltung abbrechen
az devops migrations cutover cancel --org https://dev.azure.com/<org>
--repository-id <repo-guid>
Hinweis
Der cutover cancel Befehl funktioniert nur, wenn sich die Migration noch in der Synchronisierungsphase befindet. Sobald die Stufe zu Cutover übergeht, lehnt der Server die Abbruchanfrage ab, und die CLI gibt einen Exitcode ungleich null zurück. Wenn Sie einen bereits laufenden Cutover stoppen müssen, verwenden Sie az devops migrations abandon oder wenden Sie sich an das ELM-Team.
Was während der Umschaltung passiert
- Das Azure-DevOps-Repository wird in einen kontrollierten Nur-Lese-Zustand versetzt.
- ELM führt die endgültige Synchronisierung aus. Verbleibende Deltas werden auf GitHub angewendet.
- GitHub wird zum autoritativen Datensatzsystem.
- Auf der Azure DevOps Repositoryseite wird ein Banner angezeigt, das Benutzer mit dem neuen GitHub Speicherort verknüpft.
- Der Migrationsstatus ist "Migriert erfolgreich / " markiert.
Fortschritt der Umschaltung überwachen
az devops migrations status --org https://dev.azure.com/<org>
--repository-id <repo-guid>
Warten Sie, bis bei der Migration status: Succeeded und stage: Migrated angezeigt werden.
Hinweis
ELM-Aufträge werden alle 30 bis 60 Minuten ausgeführt. Wenn Sie die Umschaltung planen, sobald die Migration in die Umschaltungsphase eintritt, kann es bis zu 60 Minuten dauern, bis der Umschaltungsauftrag startet.
Important
Nach Abschluss der Umstellung werden in GitHub erstellte Pull Requests nicht zurück nach Azure DevOps synchronisiert.
Überprüfung der Umstellung
Wenn die Pipelineumleitung aktiviert ist oder nicht aufgelöste Fehler zur geplanten Übernahmezeit verbleiben, hält ELM die Migration in ReviewForCutover an, anstatt automatisch fortzufahren. Diese Bedingung kann beispielsweise auftreten, wenn einige Pullanforderungen nicht migriert werden können. Überprüfen Sie die Fehler, und wählen Sie dann explizit aus, ob der Vorgang fortgesetzt werden soll.
Fehler bei der Umschaltung überprüfen
az devops migrations cutover review --org https://dev.azure.com/<org>
--repository-id <repo-guid>
Der Befehl gibt eine Zusammenfassung nicht aufgelöster Elemente zurück:
| Feld | Description |
|---|---|
failedCount |
Anzahl der Elemente, die nicht migriert werden konnten. |
blockedCount |
Anzahl der Elemente, die von Abhängigkeiten blockiert werden. |
pendingCount |
Anzahl der noch ausstehenden Einträge. |
totalUnprocessedCount |
Gesamtanzahl der Elemente, die eine Genehmigung erfordern. |
failedItems |
Detaillierte Liste der nicht verarbeiteten Elemente mit Status, Typ und Pullanforderungs-URL. |
Überprüfen Sie die failedItems Liste sorgfältig, damit Sie verstehen, welche Elemente nicht migriert werden, wenn Sie den Vorgang fortsetzen möchten.
Optionen in ReviewForCutover
Nachdem Sie die Fehler überprüft haben, wählen Sie eine der folgenden Optionen aus:
| Auswahl | Was es bewirkt | Wann verwenden? |
|---|---|---|
| Genehmigen und Fortfahren | Akzeptiert die Fehler und Fortschritte bei der Übernahme. | Sie haben alle Fehlschläge überprüft und sind damit einverstanden, ohne diese Elemente fortzufahren. |
| Eindeutiges Umstellungsdatum | Setzt auf die Synchronisierung zurück. Die Migration synchronisiert sich weiterhin. | Sie möchten die Probleme zuerst beheben und einen neuen Umstellungstermin für später ansetzen. |
| Umschaltung neu planen | Setzt die Synchronisierung mit einem neuen Umstellungsdatum zurück. Führen Sie den Vorgang az devops migrations cutover set --date <new> erneut aus, um ein neues Datum festzulegen. Wenn die Fehler bis zum neuen Termin behoben sind, erfolgt die Umschaltung automatisch. |
Sie möchten mehr Zeit. |
| Löschen der Migration | Löscht den Migrationsdatensatz. Ein Überwachungsereignis wird protokolliert; das Azure-DevOps-Quellrepository bleibt unverändert. | Sie möchten diese Migration vollständig abbrechen. |
| Migration anhalten | Hält die Synchronisierung an, bis Sie sie manuell fortsetzen. | Sie müssen während der Untersuchung alle Aktivitäten anhalten. |
Übernahme genehmigen
Wenn Sie sich entscheiden, fortzufahren, bestätigen Sie die Umstellung, indem Sie die Anzahl der zu überspringenden Elemente bestätigen:
az devops migrations cutover approve --org https://dev.azure.com/<org>
--repository-id <repo-guid>
--accept-failures <N>
--pipelines-verified
Legen Sie für <N> einen Wert fest, der größer oder gleich totalUnprocessedCount aus der Cutover-Überprüfung ist.
Einschließen --pipelines-verified , wenn die Übernahmeüberprüfung zurückgegeben wird requiresPipelineVerificationAcknowledgment: true. Diese Kennzeichnung bestätigt, dass Sie alle neu verkabelten Pipelines überprüft und überprüft haben. Sie müssen mindestens eines von --accept-failures oder --pipelines-verified angeben.
Warning
Die Genehmigung ist unwiderruflich. Es gibt keine API zum Widerrufen einer Genehmigung. Wenn Sie versehentlich eine Genehmigung erteilen, besteht der einzige Weg zur Wiederherstellung darin, az devops migrations abandon und anschließend die Migration neu zu erstellen.
Hinweis
Wenn nach Ihrer Überprüfung und vor Ihrer Genehmigung neue Fehler auftreten, wird der Befehl mit HTTP 400 abgelehnt, der als CLIError zurückgegeben wird und darauf hinweist, dass die Anzahl der Fehler nicht mehr übereinstimmt. Führen Sie cutover review erneut aus, beachten Sie das aktualisierte totalUnprocessedCount, und versuchen Sie die Genehmigung erneut. Skripts und Automatisierung können mit dem Nicht-Null-Ausgangscode übereinstimmen.
Nach der Genehmigung wechselt die Migration zu ReadyForCutover:
- Wenn bereits ein Umstellungsdatum geplant ist, erfolgt die Umstellung automatisch zum geplanten Zeitpunkt.
- Wenn kein Umstellungsdatum festgelegt ist, legen Sie eines fest, um fortzufahren.