Heim > php教程 > PHP开发 > Detaillierte Erläuterung des Arbeitsbereichs, des Staging-Bereichs und des Repositorys des Git-Tutorials

Detaillierte Erläuterung des Arbeitsbereichs, des Staging-Bereichs und des Repositorys des Git-Tutorials

黄舟
Freigeben: 2016-12-16 14:48:17
Original
1191 Leute haben es durchsucht

Git-Arbeitsbereich, Staging-Bereich und Repository

Grundlegende Konzepte

Lassen Sie uns zunächst die Konzepte von Git-Arbeitsbereich, Staging-Bereich und Repository verstehen

Arbeitsbereich: Dies ist das Verzeichnis, das Sie auf Ihrem Computer sehen können.
Temporärer Lagerbereich: auf Englisch Bühne genannt, oder Index. Es wird im Allgemeinen in der Indexdatei (.git/index) im „Git-Verzeichnis“ gespeichert, daher nennen wir den temporären Speicherbereich manchmal den Index (Index).
Repository: Es gibt ein verstecktes Verzeichnis .git im Arbeitsbereich. Dies ist nicht der Arbeitsbereich, sondern das Git-Repository.

Das folgende Bild zeigt die Beziehung zwischen dem Arbeitsbereich, dem Staging-Bereich im Repository und dem Repository:

Detaillierte Erläuterung des Arbeitsbereichs, des Staging-Bereichs und des Repositorys des Git-Tutorials

Links im Bild Die Seite ist der Arbeitsbereich und die rechte Seite ist das Repository. Der mit „Index“ gekennzeichnete Bereich im Repository ist der Staging-Bereich (Stufe, Index) und der mit „Master“ gekennzeichnete Bereich ist der Master Der durch den Zweig dargestellte Verzeichnisbaum.

Auf dem Bild können wir sehen, dass „HEAD“ tatsächlich ein „Cursor“ ist, der auf den Master-Zweig zeigt. Wenn also HEAD im im Bild gezeigten Befehl erscheint, können Sie master verwenden zu ersetzen.

Der durch Objekte im Bild identifizierte Bereich ist die Git-Objektbibliothek, die sich tatsächlich in „.git/objects“ befindet. Verzeichnis, das verschiedene erstellte Objekte und Inhalte enthält.
Beim Ausführen von „git add“ für Dateien, die im Arbeitsbereich geändert (oder hinzugefügt) wurden Beim Ausführen des Befehls wird der Verzeichnisbaum im Staging-Bereich aktualisiert und gleichzeitig werden die Inhalte der im Arbeitsbereich geänderten (oder hinzugefügten) Dateien in ein neues Objekt in der Objektbibliothek geschrieben und die ID des Das Objekt wird im Staging-Bereich aufgezeichnet.

Beim Ausführen einer Festschreibungsoperation (Git Commit) wird der Verzeichnisbaum im Staging-Bereich in die Versionsbibliothek (Objektbibliothek) geschrieben und der Hauptzweig wird entsprechend aktualisiert. d.h. Meister Der Verzeichnisbaum, auf den verwiesen wird, ist der Verzeichnisbaum des temporären Speicherbereichs zum Zeitpunkt der Übermittlung.

Wenn der Befehl „git reset HEAD“ ausgeführt wird, wird der Verzeichnisbaum im Staging-Bereich neu geschrieben und durch den Verzeichnisbaum ersetzt, auf den der Master-Zweig verweist, der Arbeitsbereich wird jedoch nicht beeinträchtigt .

Wenn der Befehl „git rm --cached “ ausgeführt wird, wird die Datei direkt aus dem Staging-Bereich gelöscht und der Arbeitsbereich wird nicht geändert.

Beim Ausführen von „git checkout“ oder „git checkout – “ Mit dem Befehl werden die Dateien im Arbeitsbereich durch alle oder bestimmte Dateien im Staging-Bereich ersetzt. Dieser Vorgang ist gefährlich und löscht Änderungen im Arbeitsbereich, die nicht zum Staging-Bereich hinzugefügt wurden.

Beim Ausführen des Befehls „git checkout HEAD“ oder „git checkout HEAD “ wird der Punkt verwendet, auf den HEAD zeigt Master Alle oder ein Teil der Dateien in der Verzweigung ersetzen die Dateien im Staging-Bereich und im Arbeitsbereich. Dieser Befehl ist außerdem äußerst gefährlich, da er nicht nur die nicht festgeschriebenen Änderungen im Arbeitsbereich, sondern auch die nicht festgeschriebenen Änderungen im Staging-Bereich löscht.

Das Obige ist die detaillierte Erläuterung des Arbeitsbereichs, des temporären Speicherbereichs und des Repositorys des Git-Tutorials. Weitere verwandte Artikel finden Sie auf der chinesischen PHP-Website (www.php.cn)!


Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage