Verwenden von git fetch --dry-run
Im vorherigen Schritt haben wir git ls-remote
verwendet, um zu sehen, welche Referenzen in einem Remote-Repository verfügbar sind. Jetzt wollen wir untersuchen, wie man git fetch --dry-run
verwendet.
Der Befehl git fetch
wird verwendet, um Commits, Dateien und Referenzen (refs) von einem Remote-Repository in Ihr lokales Repository herunterzuladen. Allerdings führt er keine automatische Merge-Operation durch oder ändert nicht Ihre aktuellen Arbeitsdateien. Es ist wie das Empfangen von Updates aus einer anderen Zeitmaschine, ohne sie sofort anzuwenden.
Das Hinzufügen der Option --dry-run
zu git fetch
macht den Vorgang noch sicherer. Es teilt Git mit, Ihnen zu zeigen, was passieren würde, wenn Sie git fetch
ausführen würden, ohne tatsächlich etwas herunterzuladen oder Änderungen vorzunehmen. Es ist wie das Anfordern einer Simulation einer Reise von Ihrer Zeitmaschine, bevor Sie tatsächlich losfahren.
Um git fetch --dry-run
zu verwenden, benötigen Sie normalerweise ein lokales Git-Repository, das so konfiguriert ist, dass es ein Remote-Repository verfolgt. Da wir noch kein Repository mit einem Remote-Repository eingerichtet haben, können wir git fetch --dry-run
nicht auf die übliche Weise direkt verwenden.
Dennoch können wir das Konzept demonstrieren, indem wir versuchen, direkt von einer Remote-URL zu fetchen, auch wenn dies in typischen Workflows weniger üblich ist. Versuchen wir erneut, von der Git-Repository-URL mit der --dry-run
-Option zu fetchen.
Navigieren Sie in Ihr Projektverzeichnis, falls Sie nicht bereits dort sind:
cd ~/project
Führen Sie jetzt den folgenden Befehl aus:
git fetch --dry-run https://github.com/git/git.git
Sie sollten eine Ausgabe ähnlich der folgenden sehen:
From https://github.com/git/git.git
* [new branch] master -> origin/master
... (möglicherweise viele weitere Zeilen, die zeigen, was geholt werden würde) ...
Diese Ausgabe zeigt Ihnen, welche Branches und Tags aus dem Remote-Repository geholt würden. Die Zeilen, die mit * [new branch]
beginnen, geben an, dass es sich um Branches handelt, die auf dem Remote-Repository, aber nicht lokal existieren, und wo sie lokal gespeichert würden (z.B. origin/master
).
Die Option --dry-run
ist unglaublich nützlich, um die Änderungen, die Sie von einem Remote-Repository erhalten würden, zu previewen, bevor Sie sie tatsächlich holen. Dies hilft Ihnen zu verstehen, welche Updates verfügbar sind und vermeidet unerwartete Änderungen an Ihrem lokalen Repository.
In einer realen Welt würden Sie normalerweise ein Remote-Repository konfiguriert haben (oft mit dem Namen origin
) und würden git fetch --dry-run origin
in Ihrem geklonten Repository ausführen. Dies würde Ihnen die verfügbaren Änderungen von diesem bestimmten Remote-Repository zeigen.