Azure DevOps Services | Azure DevOps Server 2022 – Azure DevOps Server 2019 | TFS 2018
Visual Studio 2019 | Visual Studio 2022
Git verwendet Commitmetadaten wie übergeordnete Links, Autorendetails und Zeitstempel, um den Verlauf von Änderungen in einem Repository nachzuverfolgen. Sie können den Git-Verlauf überprüfen, um herauszufinden, wann Dateien geändert wurden, wer sie geändert hat und welche Änderungen vorgenommen wurden.
Wenn Personen Featurebranchs mithilfe von Pull Requests erstellen und in einem Zielbranch zusammenführen, ist der Entwicklungsverlauf des Zielbranchs möglicherweise keine gerade chronologische Linie. Wenn Sie also den Verlauf der Änderungen an einer Datei im Zielbranch überprüfen, denken Sie daran, dass die Reihenfolge der Commits von der Mergestrategie und dem Mergedatum beeinflusst wird, nicht nur von dem ursprünglichen Datum der Änderungen. Mit dem letzten Commit für den Branch kann beispielsweise eine Änderung eingeführt werden, die main vor Wochen in einem Featurebranch vorgenommen wurde, der gerade erst mit einem Drei-Wege-Merge in den main Branch zusammengeführt wurde.
Wenn Sie herausfinden möchten, wie und wann eine bestimmte Dateiänderung aufgetreten ist, müssen Sie möglicherweise verschiedene Versionen derselben Datei aus verschiedenen Commits vergleichen, möglicherweise in verschiedenen Branches.
Auf der Projektwebsite des Azure DevOps-Teams können Sie zwei Versionen derselben Datei aus Commits in derselben Verzweigung vergleichen, unterstützt jedoch nicht den Vergleich von Dateiversionen zwischen Branches.
Öffnen Sie in Ihrem Webbrowser das Teamprojekt für Ihre Azure DevOps-Organisation. Wählen Sie in der Ansicht Repositorydateien > eine Datei und dann die Registerkarte Vergleichen aus.
Wählen Sie auf der Registerkarte Vergleichen die beiden Commits aus, die die Dateiversionen enthalten, die Sie vergleichen möchten. In der ansicht diff werden alle neuen, gelöschten oder geänderten Dateizeilen angezeigt.
Hinweis
Mit GitHub können Sie zwei Versionen derselben Datei aus verschiedenen Commits in verschiedenen Branches vergleichen. Fügen /compare/<commit1>..<commit2> Sie zum Vergleichen an die GitHub-Repository-URL an, um zur Vergleichsseite zu navigieren. Die Vergleichsseite enthält eine Diffansicht aller Dateien, die sich unterscheiden. Weitere Informationen zum Vergleich von Commits in GitHub finden Sie unter Vergleichen von Commits.
Visual Studio 2022 bietet Git-Versionskontrolle über das Git-Menü, Git-Änderungen sowie über Kontextmenüs im Projektmappen-Explorer. Visual Studio 2019, Version 16.8 bietet auch die Team Explorer-Git-Benutzeroberfläche. Weitere Informationen finden Sie auf der Registerkarte Visual Studio 2019 – Team Explorer.
Visual Studio bietet die Möglichkeit, zwei Versionen derselben Datei im selben Branch zu vergleichen. Der branchübergreifende Vergleich von Dateiversionen wird jedoch nicht unterstützt.
Wählen Sie im Projektmappen-Explorer eine Datei aus, und wählen Sie im Kontextmenü der Datei Git > Verlauf anzeigen aus, um die Registerkarte Git-Verlauf für die ausgewählte Datei zu öffnen.
Wählen Sie auf der Registerkarte Git-Verlauf im Kontextmenü eines Commits die Option Mit vorherigen vergleichen aus, um eine Diff-Registerkarte zu öffnen, auf der das ausgewählte Commit mit dem vorherigen Commit verglichen wird.
Sie können auch zwei Commits und Vergleichen im Kontextmenü eines der beiden Commits auswählen, um eine Diff-Registerkarte zu öffnen, auf der die beiden ausgewählten Commits verglichen werden.
Auf der Diff-Registerkarte werden neue, gelöschte oder geänderte Dateizeilen angezeigt.
Visual Studio 2019 bietet Git-Versionskontrolle über das Git-Menü, Git-Änderungen und über die Kontextmenüs im Projektmappen-Explorer.
Visual Studio bietet die Möglichkeit, zwei Versionen derselben Datei im selben Branch zu vergleichen. Der branchübergreifende Vergleich von Dateiversionen wird jedoch nicht unterstützt.
Wählen Sie im Projektmappen-Explorer eine Datei aus, und wählen Sie im Kontextmenü der Datei Git > Verlauf anzeigen aus, um die Registerkarte Git-Verlauf für die ausgewählte Datei zu öffnen.
Wählen Sie auf der Registerkarte Git-Verlauf im Kontextmenü eines Commits die Option Mit vorherigen vergleichen aus, um eine Diff-Registerkarte zu öffnen, auf der das ausgewählte Commit mit dem vorherigen Commit verglichen wird.
Sie können auch zwei Commits und Vergleichen im Kontextmenü eines der beiden Commits auswählen, um eine Diff-Registerkarte zu öffnen, auf der die beiden ausgewählten Commits verglichen werden.
Auf der Diff-Registerkarte werden neue, gelöschte oder geänderte Dateizeilen angezeigt.
Team Explorer bietet keine Unterstützung für dieses Feature.
Der Befehl git diff kann verschiedene Versionen derselben Datei aus verschiedenen Commits in verschiedenen Branches vergleichen. Mit dem Befehl git log können Sie die Commits identifizieren, die die Dateiversionen enthalten, die Sie vergleichen möchten.
Verwenden Sie git log eine Datei, und geben Sie sie an, um die Commits auflisten, die die Datei geändert haben:
git log <file>
Standardmäßig beginnt die Befehlsausgabe mit dem letzten Commit in der aktuellen Verzweigung und durchläuft dann den Rückwärtslauf durch Vorgängercommits (unabhängig vom Branch), indem sie den übergeordneten Links in den Metadaten jedes Commits folgt.
Das folgende Beispiel veranschaulicht die Ausgabe des Befehls git log index.html:
Die Ausgabe zeigt, dass eine Zeile gelöscht und eine Zeile hinzugefügt wurde.
Einschränken der Git-Protokollausgabe
Um die Commits zu begrenzen, die git log aufgelistet werden, können Sie nach Autor, Datum, Nachricht, geänderten Inhalten und mehr filtern. Beispiel:
git log --author=frank@fabrikam.com index.html Listet nur Commits des angegebenen Autors auf.
git log --since="2022-5-1" Listet nur Commits auf, die nach dem angegebenen Datum erstellt wurden.
git log --before="yesterday" Listet nur Commits auf, die vor dem angegebenen relativen Datum erstellt wurden.
git log --grep="css change" Listet nur Commits mit dem angegebenen Text in ihrer Nachricht auf.
git log -S"myVariable" Listet nur Commits auf, die die angegebene Zeichenfolge einführen oder entfernen.
git log -G"myVar.*" Listet nur Commits auf, die die angegebene RegEx-Zeichenfolge einführen oder entfernen.
git log -3 listet nur die letzten drei Commits auf.
Formatieren der Git-Protokollausgabe
Sie haben mehrere Formatoptionen für die Commitliste. Beispiel:
git log --abbrev-commit listet Commits mithilfe einer abgekürzten ID (SHA-1-Prüfsumme) auf.
git log --oneline listet jeden Commit in einem einzeiligen abgekürzten Format auf.
git log --patch index.htmllistet jeden Commit zusammen mit einer diff der Änderungen auf.
Wiederherstellen von Dateien
Sie können eine bestimmte Version einer Datei aus dem Git-Verlauf wiederherstellen, auch wenn die Datei in einem späteren Commit bearbeitet, gelöscht oder umbenannt wurde. Durch das Wiederherstellen einer älteren Version einer Datei wird kein neuer Commit mit der Änderung erstellt. Um Ihren Branch mit der wiederhergestellten Dateiversion zu aktualisieren, müssen Sie die Änderung committen.
Auf der Projektwebsite des Azure DevOps-Teams können Sie alle Änderungen rückgängig machen, die von einem bestimmten Commit vorgenommen wurden, aber das Wiederherstellen von Änderungen an einer bestimmten Datei innerhalb des Commits wird nicht unterstützt.
Visual Studio bietet die Möglichkeit, zwei Versionen derselben Datei im selben Branch zu vergleichen. Der branchübergreifende Vergleich von Dateiversionen wird jedoch nicht unterstützt.
Wählen Sie im Projektmappen-Explorer eine Datei aus, und wählen Sie im Kontextmenü der Datei Git > Verlauf anzeigen aus, um die Registerkarte Git-Verlauf für die ausgewählte Datei zu öffnen.
Wählen Sie auf der Registerkarte Git-Verlauf im Kontextmenü eines Commits die Option Mit vorherigen vergleichen aus, um eine Diff-Registerkarte zu öffnen, auf der das ausgewählte Commit mit dem vorherigen Commit verglichen wird.
Sie können auch zwei Commits und Vergleichen im Kontextmenü eines der beiden Commits auswählen, um eine Diff-Registerkarte zu öffnen, auf der die beiden ausgewählten Commits verglichen werden.
Auf der Diff-Registerkarte werden neue, gelöschte oder geänderte Dateizeilen angezeigt.
Visual Studio bietet die Möglichkeit, zwei Versionen derselben Datei im selben Branch zu vergleichen. Der branchübergreifende Vergleich von Dateiversionen wird jedoch nicht unterstützt.
Wählen Sie im Projektmappen-Explorer eine Datei aus, und wählen Sie im Kontextmenü der Datei Git > Verlauf anzeigen aus, um die Registerkarte Git-Verlauf für die ausgewählte Datei zu öffnen.
Wählen Sie auf der Registerkarte Git-Verlauf im Kontextmenü eines Commits die Option Mit vorherigen vergleichen aus, um eine Diff-Registerkarte zu öffnen, auf der das ausgewählte Commit mit dem vorherigen Commit verglichen wird.
Sie können auch zwei Commits und Vergleichen im Kontextmenü eines der beiden Commits auswählen, um eine Diff-Registerkarte zu öffnen, auf der die beiden ausgewählten Commits verglichen werden.
Auf der Diff-Registerkarte werden neue, gelöschte oder geänderte Dateizeilen angezeigt.
Visual Studio 2019, Version 16.8 und höher, bietet eine Benutzeroberfläche für Git-Versionskontrolle, während die Git-Benutzeroberfläche von Team Explorer beibehalten wird. Um Team Explorer zu verwenden, deaktivieren Sie in der Menüleiste Extras>Optionen>Vorschaufeatures>Neue Git-Benutzeroberfläche.
Wählen Sie in Projektmappen-Explorer eine Datei aus, und wählen Sie im Kontextmenü der Datei Git-Verlauf > anzeigen aus, um eine Registerkarte Git-Verlauf für die ausgewählte Datei zu öffnen.
Wählen Sie auf der Registerkarte Git-Verlauf einen Commit aus, und klicken Sie im Kontextmenü des Commits auf Commitdetails anzeigen , um die Ansicht Commitdetails zu öffnen.
Wählen Sie in der Ansicht Commitdetails die Datei aus, und klicken Sie im Kontextmenü der Datei auf Öffnen , um die vorherige Version der Datei auf einer neuen Registerkarte zu öffnen.
Wählen Sie in der Menüleiste Datei > speichern unter aus, um die wiederhergestellte Version der Datei zu speichern.
Sie können die Befehle git checkout oder git show verwenden, um eine bestimmte Version einer Datei aus dem Git-Verlauf wiederherzustellen.
git checkout setzt eine Datei auf eine zuvor zugesagte Version zurück, wenn Sie die Datei und einen Commit angeben:
git checkout <commit> <file>
Rückgängig machen die src/app.ts Datei z. git checkout 85435fac src/app.ts B. im Commit 85435facauf ihre Version.
git show gibt den Inhalt einer zuvor committeten Dateiversion aus, die Sie in eine Ausgabedatei umleiten können:
git show <commit>:<file> > <output file>
Schreibt beispielsweise git show 85435fac:src/app.ts > /archive/oldapp.ts den Inhalt von app.ts in commit 85435fac in /archive/oldapp.ts.
Sie können alle lokalen oder Remote-Branches vergleichen, um die Änderungen zu überprüfen, die sich aus einer Merge- oder Neudatenbank ergeben. Mit dem Branchvergleich können Sie nach Mergekonflikten suchen und sehen, wie sich Änderungen anderer auf Ihre Arbeit auswirken können.
Visual Studio 2019 und frühere Versionen unterstützen keinen Branchvergleich. Wenn Sie also eine dieser Versionen verwenden, können Sie Branches in der Git-Befehlszeile oder in Ihrem Webbrowser vergleichen – wenn Ihr Repository in Azure Repos oder GitHub gehostet wird. Visual Studio 2022 unterstützt den Branchvergleich, wie unter Vergleichen von Branches beschrieben.
Öffnen Sie in Ihrem Webbrowser das Teamprojekt für Ihre Azure DevOps-Organisation. Wählen Sie in der Ansicht Repos > Branches die Auslassungspunkte für einen beliebigen Branch aus, und wählen Sie Branches vergleichen aus, um die Ansicht Branchvergleich zu öffnen.
Wählen Sie in der Ansicht Branchvergleich die beiden Branches aus, die Sie vergleichen möchten. Wählen Sie die Registerkarte Dateien für eine diff Ansicht der neuen, gelöschten oder geänderten Zeilen in jeder geänderten Datei aus.
Hinweis
GitHub unterstützt den Branchvergleich. Um zwei Branches zu vergleichen, fügen Sie /compare/<branch1>...<branch2> an Ihre GitHub-Repository-URL an, um zur Vergleichsseite zu navigieren. Die Vergleichsseite enthält eine Diffansicht aller Dateien, die sich unterscheiden. Weitere Informationen zum Branchvergleich in GitHub finden Sie unter Vergleichen von Branches.
Um einen Branch mit dem aktuellen Branch zu vergleichen, klicken Sie im Bereich Branches Ihres Repositorys mit der rechten Maustaste auf einen Branch, und wählen Sie dann die Option Vergleichen aus. Das Kontextmenü gibt die Namen der aktuellen und der Zielbranche an:
Visual Studio 2019 unterstützt keinen Branchvergleich. Sie können Jedoch Branches über die Git-Befehlszeile oder in Ihrem Webbrowser vergleichen, wenn Ihr Repository in Azure Repos oder GitHub gehostet wird.
Tipp
Sie können in der Startansicht von Team Explorer auf das Webportal zugreifen, indem Sie Webportal auswählen.
Visual Studio 2019 unterstützt keinen Branchvergleich. Sie können Jedoch Branches über die Git-Befehlszeile oder in Ihrem Webbrowser vergleichen, wenn Ihr Repository in Azure Repos oder GitHub gehostet wird.
Tipp
Sie können in der Startansicht von Team Explorer auf das Webportal zugreifen, indem Sie Webportal auswählen.
Um zwei lokale Oder Remote-Branches zu vergleichen, können Sie den Git-Befehl diff verwenden, um die Branchnamen anzugeben:
git diff <branch1> <branch2>
Git vergleicht den Commit an der Spitze eines Branchs mit dem Commit an der Spitze des anderen. Die diff Ausgabe zeigt die Löschungen und Ergänzungen zwischen den einzelnen Dateien in den beiden Branches an.
Hier sehen Sie ein Beispiel für die Ausgabe für den Befehl git diff users/frank/feature origin/main, der einen lokalen Branch mit einem Remotebranch vergleicht:
index 36843b8..03afc4b 100644
--- a/tsapp/index.html
+++ b/tsapp/index.html
@@ -4,7 +4,7 @@
<head>
<meta charset="utf-8" />
<title>TypeScript HTML App</title>
- <link rel="stylesheet" href="fabrikam-test.css" type="text/css" />
+ <link rel="stylesheet" href="fabrikam.css" type="text/css" />
<script src="app.js"></script>
</head>
...
--- a/tsapp/app.ts
+++ b/tsapp/app.ts
constructor(element: HTMLElement) {
this.element = element;
- this.element.innerHTML += "The time is: ";
+ this.element.innerHTML += "The time is now: ";
this.span = document.createElement('span');
this.element.appendChild(this.span);
this.span.innerText = new Date().toUTCString();
Um den Vergleich mit einer bestimmten Datei einzugrenzen, geben Sie die Datei im diff Befehl an:
git diff <branch1> <branch2> <file>
Generiert beispielsweise git diff users/frank/feature origin/main index.html nur einen diff für die index.html Datei.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unter https://aka.ms/ContentUserFeedback.