Git-Grundoperationen

Die Aufgabe von Git ist es, Snapshots Ihres Projekts zu erstellen und zu speichern und sie mit nachfolgenden Snapshots zu vergleichen.

In diesem Kapitel werden die Befehle zum Erstellen und Festschreiben von Snapshots Ihres Projekts vorgestellt.

Die 6 häufig verwendeten Git-Befehle sind:git clone、git push、git add 、git commit、git checkout、git pullWir werden dies später ausführlich vorstellen.

Beschreibung:

  • Arbeitsbereich: Arbeitsverzeichnis
  • Staging-Bereich: Staging-Bereich/Cache-Bereich
  • lokales Repository: Repository oder lokales Repository
  • Remote-Repository: Remote-Repository

Ein einfacher Arbeitsschritt:

$ git init    
$ git add .    
$ git commit  
  • git init - Ein Repository initialisieren.
  • git add . - Dateien zum Staging-Bereich hinzufügen.
  • git commit - Den Inhalt des Staging-Bereichs zum Repository hinzufügen.

Befehle zum Erstellen eines Repositorys

Die folgende Tabelle listet die Befehle zum Erstellen eines Git-Repositorys auf:

Befehl Beschreibung
git init Repository initialisieren
git clone Ein Remote-Repository kopieren, d. h. ein Projekt herunterladen.

Committen und ändern

Die Aufgabe von Git ist es, Snapshots Ihres Projekts zu erstellen und zu speichern und sie mit nachfolgenden Snapshots zu vergleichen.

Die folgende Tabelle listet die Befehle zum Erstellen und Committen von Snapshots Ihres Projekts auf:

Befehl Beschreibung
git add Dateien zum Staging-Bereich hinzufügen
git status Den aktuellen Status des Repositorys anzeigen, wobei geänderte Dateien angezeigt werden.
git diff Dateiunterschiede vergleichen, d. h. die Unterschiede zwischen dem Staging-Bereich und dem Arbeitsverzeichnis.
git difftool Ein externes Diff-Tool verwenden, um Dateiänderungen anzuzeigen und zu vergleichen.
git range-diff Die Unterschiede zwischen zwei Commit-Bereichen vergleichen.
git commit Den Staging-Bereich in das lokale Repository committen.
git reset Version zurücksetzen.
git rm Dateien aus dem Staging-Bereich und dem Arbeitsverzeichnis löschen.
git mv Dateien im Arbeitsverzeichnis verschieben oder umbenennen.
git notes Kommentar hinzufügen.
git checkout Branch-Wechsel.
git switch (Git 2.23 版本引入) Branches übersichtlicher wechseln.
git restore (Git 2.23 版本引入) Änderungen an Dateien wiederherstellen oder zurücksetzen.
git show Detaillierte Informationen zu Git-Objekten anzeigen.

SubmitLog

Befehl Beschreibung
git log Historische Commit-Einträge anzeigen
git blame <file> Die historischen Änderungsdatensätze der angegebenen Datei in Listenform anzeigen.
git shortlog Eine prägnante Zusammenfassung des Commit-Logs generieren
git describe Eine lesbare Zeichenkette generieren, die den aktuellen Commit basierend auf dem Tag-System von Git beschreibt.

farCourseOperation

Befehl Beschreibung
git remote Remote-Repository-Operationen
git fetch Fetch das Repository vom Remote
git pull Remote-Code herunterladen und merge
git push Code zum Remote hochladen und merge
git submodule Projekte verwalten, die andere Git-Repositories enthalten.

Git-Dateizustände

Git-Dateizustände werden in drei Typen unterteilt: Arbeitsverzeichnis, Staging-Bereich und Lokales Repository. Das Verständnis dieser Konzepte und ihrer Interaktion ist der Schlüssel zur Beherrschung von Git.

Arbeitsverzeichnis

Das Arbeitsverzeichnis sind die Projektdateien, die Sie auf Ihrem lokalen Computer sehen. Hier bearbeiten Sie tatsächlich Dateien, einschließlich Anzeigen, Bearbeiten, Löschen und Erstellen von Dateien. Alle Änderungen an Dateien finden zuerst im Arbeitsverzeichnis statt.

Dateien im Arbeitsverzeichnis können die folgenden Zustände haben:

  • Nicht verfolgt: Eine neu erstellte Datei, die nicht von Git erfasst wurde.
  • Geändert: Eine von Git verfolgte Datei wurde geändert, aber diese Änderungen wurden noch nicht in den Aufzeichnungen von Git committet.

Staging-Bereich

Der Staging-Bereich, auch Index genannt, ist ein temporärer Speicherbereich, der verwendet wird, um Änderungen aufzunehmen, die gerade in das lokale Repository committet werden sollen. Du kannst Änderungen aus dem Arbeitsverzeichnis selektiv zum Staging-Bereich hinzufügen, sodass du Änderungen aus mehreren Dateien gleichzeitig committen kannst, ohne Änderungen aus allen Dateien committen zu müssen.

  • Nutzunggit add <filename>Der Befehl fügt Dateien aus dem Arbeitsverzeichnis zum Staging-Bereich hinzu.
  • Nutzunggit add .Der Befehl fügt alle Änderungen im aktuellen Verzeichnis zum Staging-Bereich hinzu.
git add <filename>  # 添加指定文件到暂存区
git add .           # 添加所有更改到暂存区

Lokales Repository

Das lokale Repository ist eine.gitDatenbank, die im Verzeichnis verborgen ist und dazu dient, die gesamte Commit-Historie des Projekts zu speichern. Jedes Mal, wenn du Änderungen committest, speichert Git den Inhalt des Staging-Bereichs im lokalen Repository.

Nutzunggit commit -m "commit message"Der Befehl committet Änderungen im Staging-Bereich in das lokale Repository.

git commit -m "commit message"  # 提交暂存区的更改到本地仓库

Übergangsprozess für Dateizustände

Nicht verfolgt: Neu erstellte Dateien sind anfangs nicht verfolgt. Sie existieren im Arbeitsverzeichnis, werden aber nicht von Git verfolgt.

touch newfile.txt  # 创建一个新文件
git status         # 查看状态,显示 newfile.txt 未跟踪

Verfolgt: Durchgit addNachdem der Befehl eine nicht verfolgte Datei zum Staging-Bereich hinzugefügt hat, wird die Datei verfolgt.

git add newfile.txt  # 添加文件到暂存区
git status           # 查看状态,显示 newfile.txt 在暂存区

Geändert: Nachdem Änderungen an einer verfolgten Datei vorgenommen wurden, werden diese Änderungen als geändert angezeigt, aber diese Änderungen wurden noch nicht zum Staging-Bereich hinzugefügt.

echo "Hello, World!" > newfile.txt  # 修改文件
git status                          # 查看状态,显示 newfile.txt 已修改

Vorgemerkt: Verwendunggit addNachdem der Befehl geänderte Dateien zum Staging-Bereich hinzugefügt hat, gehen die Dateien in den vorgemerkten Zustand über und warten darauf, committet zu werden.

git add newfile.txt  # 添加文件到暂存区
git status           # 查看状态,显示 newfile.txt 已暂存

Committet: Verwendunggit commitNachdem der Befehl die Änderungen im Staging-Bereich in das lokale Repository committet hat, werden diese Änderungen aufgezeichnet, und der Dateistatus kehrt zu verfolgt zurück.

git commit -m "Added newfile.txt"  # 提交更改
git status                         # 查看状态,工作目录干净
Weitere Erweiterungen