GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Was ist der Unterschied zwischen Git Switch und Checkout?

Wenn Sie mit dem Erlernen und Verwenden von Git beginnen, werden Sie häufig auf die Situation stoßen, in der Sie Branches wechseln müssen.

Und hier könnte es für Sie etwas unübersichtlich werden. Wenn Sie nach dem Wechseln von Branches in Git suchen, werden Sie auf einige Beispiele stoßen, in denen Git Switch verwendet wird, und einige Beispiele, in denen Git Checkout verwendet wird.

Git-Checkout-Befehl Git-Switch-Befehl Beschreibung
git checkout my-branch git switch my-branch Zur Filiale my-branch wechseln
git checkout -b my-branch git switch -c my-branch Erstellen und zu my-branch wechseln

Was ist also der Unterschied zwischen Git Switch und Git Checkout? Wenn beide zum Wechseln von Zweigen verwendet werden können, warum gibt es dann zwei Befehle für denselben Zweck? Lass es mich erklären.

Unterschied zwischen git checkout und git switch

Hier ist das Ding. Git checkout ist der alte Befehl, der zum Erstellen und Wechseln von Branches verwendet wurde. Es kann auch verwendet werden, um Änderungen von einem bestimmten Commit wiederherzustellen. Aber git checkout macht mehr als das. Es erlaubt Ihnen, Dateien von jedem Zweig zu kopieren oder direkt in Ihren Arbeitsbaum zu übertragen, ohne Zweige wechseln zu müssen.

Wie Dan Fabulich anmerkt, macht git checkout drei Dinge:

  • Zweige wechseln
  • Dateien von der Bühne in den Arbeitsbaum kopieren
  • Dateien von einem Baum in den Arbeitsbaum kopieren

Wenn du es nicht verstehst, ist das okay. Denken Sie nur daran, dass git checkout mehr als nur einen Zweigwechsel tut und die zusätzlichen Funktionalitäten anfingen, Verwirrung zu stiften.

Und daher haben die Entwickler mit der Veröffentlichung von Git 2.23 zwei neue Git-Befehle eingeführt:git switch und git restore .

Die Idee hinter diesem Schritt ist es, Menschen die Verwendung von git switch zu ermöglichen zum Wechseln von Branches und git restore zum Rückgängigmachen von Änderungen aus einem Commit. Gleichzeitig git checkout bleibt dort für erweiterte Optionen, um mit Tree-ish umzugehen.

Welches solltest du verwenden? Git checkout oder git switch?

Wenn Sie Branches wechseln müssen, verwenden Sie den Befehl git switch anstelle von git checkout. Wieso den? Weil es für diese spezielle Aufgabe geschaffen wurde. Für neue Git-Benutzer ist es einfacher, sich diesen git switch zu merken dient zum Wechseln von Branches, git restore dient zum Wiederherstellen eines Commits.

Daher ist es eine gute Praxis, die Funktionen zum Erstellen und Wechseln von Zweigen von git checkout durch den Befehl git switch zu ersetzen.

Ich hoffe, Sie sind sich jetzt über die Verwendung von git switch und checkout im Klaren. Wenn Sie etwas hinzuzufügen haben, verwenden Sie bitte den Kommentarbereich.


Linux
  1. Was ist der Unterschied zwischen Mutex und kritischem Abschnitt?

  2. Was ist der Unterschied zwischen adduser und useradd?

  3. Was ist der Unterschied zwischen `su -` und `su --login`?

  4. Was ist der Unterschied zwischen unlink und rm?

  5. Was ist der Unterschied zwischen Route und IP-Route?

Was ist der Unterschied zwischen InnoDB und MyISAM?

Was ist der Unterschied zwischen Linux und Unix?

Was ist der Unterschied zwischen Login- und Non-Login-Shell

Was ist der Unterschied zwischen apt und dem Befehl apt-get?

Was ist ein Hypervisor? Was ist der Unterschied zwischen Typ 1 und 2?

Was ist der Unterschied zwischen Curl und Wget?