Geekflare wird von unserem Publikum unterstützt. Wir können Affiliate-Provisionen durch den Kauf von Links auf dieser Website verdienen.
Teilen:

32 Spickzettel für Git-Befehle für Anfänger

Git-Befehls-Spickzettel
Invicti Web Application Security Scanner – die einzige Lösung, die eine automatische Verifizierung von Schwachstellen mit Proof-Based Scanning™ bietet.

Der Spickzettel für GIT-Befehle ist eine praktische Referenz für Entwickler und enthält die am häufigsten verwendeten Befehle für Git-Projekte.

Was ist GIT?

GIT ist ein Open-Source-Repository, in dem Benutzer ihre Dateien platzieren können, einschließlich Code, Zips, Text oder das gesamte Projekt.

Es verfügt über mehrere Funktionen wie Zusammenarbeit, Versionskontrolle, Prozesskontrolle usw. GIT speichert Dateien effizienter und bietet eine bessere Integrität als andere Versionskontrollsysteme. Git ist ein Befehlszeilentool.

Was ist GitHub?

Mit seiner übersichtlichen Benutzeroberfläche GitHub, eine Drehscheibe für Entwickler, ist zum am weitesten verbreiteten Versionskontrollsystem geworden und kann von jedem und überall aufgerufen werden.

Git-Arbeitsablauf

Git ist anders workflows, und jedes Projekt sollte basierend auf seinen Anforderungen eine haben. Der Git-Workflow ist nichts anderes als ein einfacher, branchenbasierter Workflow, der Teams hilft, die regelmäßig Projekte bereitstellen.

Beispielsweise erstellt ein Forking-Git-Workflow eine lokale Kopie des Repositorys. Jeder Entwickler hat also einen lokalen Arbeitsbereich und ein zentrales Repository. Diese Art von Workflow ist gut, wenn mehrere Entwickler beteiligt sind, und ermöglicht es Entwicklern, an der gegabelten Kopie zusammenzuarbeiten, bevor sie Änderungen am Haupt-Repository vornehmen.

Warum brauchen wir Git?

Da Git ein Versionskontrollsystem ist, arbeiten Entwickler ständig daran, ihre Änderungen zu speichern, sie für andere sichtbar zu machen, ihre Änderungen mit anderen zusammenzuführen und vieles mehr.

Für alle Änderungen am Git-Repository müssen Entwickler die richtigen Befehle für die richtige Aktion kennen. Nachfolgend finden Sie eine Liste der wichtigsten und häufig verwendeten Git-Befehle:

Allgemeine Git-Befehle

git add

Zum Hinzufügen der angegebenen Datei(en) zum Staging

git add <file> -- add a specific file
git add * -- add all the files

git archive

Erstellt Archive von Commits, Zweigen und Bäumen und kombiniert mehrere Dateien zu einer. Sie können den Inhalt abrufen, indem Sie die Dateien bei Bedarf extrahieren

git archive HEAD — Erstellen Sie ein Archiv aus der HEAD-Ref des Repos

git archive output = ‘.tar’ — Speichern Sie die archivierten Dateien am angegebenen Ort

git archive --format=tar.gz — gibt das Format der archivierten Datei an, z. B. tar, zip, tar.gz

git branch

Listet alle Branches im Repository auf. Wenn eine Verzweigung angegeben wird, wird eine neue Verzweigung mit dem Namen erstellt. Verwenden Sie zum Löschen einer Verzweigung die Option -d mit dem Verzweigungsnamen. Um einen aktuellen Zweig umzubenennen, verwenden Sie -m.

git branch — Listet alle Zweige auf

git branch <branch_name> — erstellt einen neuen Branch mit dem Namen „branch_name“, checkt den neuen Branch aber nicht aus.

git branch -d <branch_name> — löscht den Zweig, verhindert das Löschen, wenn nicht zusammengeführte Änderungen vorhanden sind

git branch -D <branch_name> — Erzwingen Sie das Löschen des Zweigs, auch wenn nicht zusammengeführte Änderungen vorhanden sind

git branch -m <branch2> — Benennen Sie den aktuellen Zweig um

git cat-file

Anzeigen von Inhalts- oder Größen-/Typinformationen von Repository-Objekten

git cat-file <object> — Zeigt den Inhalt des Objekts an

git cat-file -t <object> — Zeigt den Objekttyp an

git cat-file -s <object> — Zeigt die Größe des Objekts an

git cat-file -p <object> — Drucken Sie den Objekttyp auf hübsche Weise aus

git cat-file -e <object> — zeigt den Fehler auf stderr, wenn das Objekt ein ungültiges Format hat oder nicht existiert

git cat-file <type> <object> — zeigt den Rohinhalt eines Objekts

git checkout

Um zwischen verschiedenen Zweigen eines Repositorys zu wechseln, verwenden Sie es mit Bedacht, da es dafür kein "Rückgängigmachen" gibt.

git checkout <branch_name> — Checkt den angegebenen Zweig aus

git checkout -b <branch_name> — Erstellen Sie einen neuen Zweig und wechseln Sie zu diesem Zweig

Beispielsweise:

C:\Users\geekflare>git checkout -b development_branch
Switched to a new branch 'development_branch'

git clean

Bereinigen Sie den Arbeitsdirektor. Festgeschriebene Dateien werden nicht entfernt

git clean -n  — Listet die Dateien auf, die entfernt werden

git clean -f — entfernt die Dateien

git clone

Erstellen Sie eine Kopie des vorhandenen Repos in einem neuen Verzeichnis. Nützlich, um eine Entwicklungskopie eines zentralen Repos zu erhalten.

git clone <central_repo> <new_dir> — Erstellen Sie eine Kopie des zentralen Repos in einem neuen Verzeichnis

Beispielsweise:

C:\Users\geek>git clone geekflare master
Cloning into 'master'…
done.


git clone -branch <branch> <repo> — klont einen Branch aus dem erwähnten Repository

git commit

Speichert die Änderungen in einer Staging-Umgebung, damit andere sie sehen können.

git commit — Änderungen an der Bereitstellung festschreiben

git commit -m <useful_msg> — Gibt beim Commit eine Nachricht aus, um die vorgenommenen Änderungen hervorzuheben

git commit -a  — Übertragen Sie die Änderungen direkt, ohne Staging

Angenommen, Sie haben Ihrem Arbeitsverzeichnis eine Datei namens samplefile.txt hinzugefügt und möchten die Datei festschreiben. Wenn Sie den obigen Befehl eingeben, erhalten Sie die Ausgabe:

Please enter the commit message for your changes. Lines starting
with '#' will be ignored, and an empty message aborts the commit.
On branch master
Initial commit
Changes to be committed:
new file: samplefile.txt

Sobald Sie die Nachricht geben, werden die Änderungen festgeschrieben:

C:\Users\geekflare>git commit -m 'samplemsg'
[integration_branch (root-commit) ed52dd0] 'samplemsg'
1 files changed, 24 insertions(+)
create mode 100644 samplefile.txt

git config

Gibt die Konfigurationsebene an, in die ein Eigenschaftswert geschrieben werden soll. Die Ebene „Lokal“ ist die Standardeinstellung (wenn nichts angegeben ist).

git config –local — speichert die Konfiguration im .git-Verzeichnis des Repos

git config –global — speichert die Konfiguration im Home-Verzeichnis des Benutzers

git config –system — enthält die Konfiguration aller Benutzer und Repositories und befindet sich in der Git-Konfigurationsdatei des Stammverzeichnisses.

git diff

Vergleichen Sie die Änderungen im Git-Repository, die vor dem Staging, beim Staging und nach dem Staging (Commit) vorgenommen werden können.

git diff — Repo-Änderungen nachverfolgen, die noch nicht bereitgestellt wurden

git diff --staged — Änderungen von bereitgestellten Dateien nachverfolgen (die nicht festgeschrieben sind)

git diff HEAD  — Dateiänderungen nach dem Commit verfolgen

git diff <commit1_id> <commit2_id> — Änderungen zwischen zwei Commits verfolgen; du kannst die commit_ids herausfinden mit 'git log -p --follow --filename'

git fetch

Rufen Sie einen Zweig oder ein gesamtes Remote-Repository ab

git fetch <remote-url> — Holen Sie sich das gesamte Repository von der Remote-Repository-URL

git fetch <branch_url> <branchname> — Holen Sie sich den spezifischen Zweig

git fetch -all — Alle Zweige eines entfernten Repos abrufen

git fetch origin — Aktualisieren und synchronisieren Sie das lokale Repo mit den neuen Änderungen im Remote-Repo

git fsck

Fs System ChecK Der Befehl prüft die Gültigkeit und Konnektivität von Datenbankobjekten. Es überprüft die SHA-1ID der Objekte und die Verbindungen, die sie herstellen. Fsck ist nützlich, um verlorene Commits und Dateien wiederherzustellen.

git fsck –full

git gc

Führt die Garbage Collection im aktuellen Repository aus und bereinigt nicht verwendete Dateien.

git gc

git grep

Sucht nach bestimmten Inhalten im Repository. Git bietet viele Optionen, um auf unterschiedliche Weise zu suchen

git grep -i  ‘search_term’ — Suche durch Ignorieren der Groß-/Kleinschreibung [Mensch und Mensch werden gleich sein]

git grep -f <file_name> — Übereinstimmungsmuster einer bestimmten Datei anzeigen

git grep -e ‘search-term’ — Verwenden Sie -e für den Musterabgleich

git grep -E ‘regexp|multiple_exp’ –Suche nach regulären Ausdrücken, wir können mehrere suchen, indem wir den Pipe-Operator (OR) verwenden

git grep -n ‘expr’ — vorangestellte Zeilennummer der übereinstimmenden Zeile

git grep -c ‘expr’ — Zeigen Sie die Anzahl der übereinstimmenden Zeilen anstelle jeder Zeile an

git ls-tree

Um den Inhalt eines Baumobjekts aus dem aktuellen Verzeichnis aufzulisten.

git ls -tree -d <path> — zeigt nur den angegebenen Baumeintrag, nicht die Kinder

git ls -tree -r — Rekursion in Teilbäume

git ls -tree -l — Zeigt die Größe von Dateiobjekten (Blobs) an

git ls -tree --name-only — Nur Dateinamen anzeigen und nicht die lange Ausgabe

git ls -tree --full-name — vollständige Pfadnamen anzeigen und nicht nur den Pfad relativ zum aktuellen Verzeichnis

Beispiel:

C:\Users\geek>git ls-tree --full-tree -r HEAD
100644 blob e883e60087e84f1660a9673ccb86eb0adc4f004d samplefile.txt
100644 blob 1426dc6fbff0677a484b248983a8740ff30fbb80 sample_jsindex.js

git init

Erstellen Sie ein neues leeres Repository. Es ist der erste Befehl, den Sie ausführen, um ein Git-Projekt zu erstellen.

git init — erstellt ein .git-Repository im Arbeitsverzeichnis,

Um beispielsweise ein neues Repo namens „geekflare“ zu erstellen, geben Sie den Befehl wie folgt ein:

$ git init geekflare
Initialized empty Git repository in C:/Users/geek/geekflare/.git/

git instaweb

Benutzeroberfläche zum Durchsuchen des Git-Repositorys über einen Browser. Verwendet dafür das CGI-Skript GitWeb.

git instaweb --httpd=webrick — startet den Server (httpd) und öffnet den Webbrowser auf der Seite.

Um den Server zu stoppen, verwenden Sie den obigen Befehl mit der Option –stop.

git log

Zeichnet jede Aktivität im Git-Repository auf.

git log — zeigt die letzten Commits an

git log --oneline — zeigt die Ausgabe als die ersten 7 Zeichen von SHA und die Commit-Nachricht mit einem Commit pro Zeile

git log stat — zeigt weitere Informationen über die geänderten Dateien an, wie die Anzahl der hinzugefügten/entfernten Zeilen, eine Zusammenfassung der Gesamtzahl geänderter Datensätze, hinzugefügte/entfernte Zeilen

git log --patch (or -p) — Zeigt die geänderten Dateien, die spezifischen Änderungen und ihren Speicherort an

git log --graph — Anzeigen von Protokollergebnissen in Diagrammform

git log -<n> — Anzeige der letzten 'n' Anzahl von Commits

git log --after=<date/x days/yesterday> — zeigt alle Commits nach einem bestimmten Datum an. Sie können verwenden --before um Commits vor dem angegebenen Datum anzuzeigen

git log --author=<author_name> — Commits eines bestimmten Autors (Benutzers) anzeigen.

git log --grep=<commit message> — Commits basierend auf der Commit-Nachricht filtern

git merge

Integriert alle Entwicklungsdateien in einen einzigen Zweig, kombiniert zwei Zweige und führt mehrere Commits zu einem einzigen Verlauf zusammen. Die Zusammenführung stoppt, wenn es einen Konflikt gibt, und git präsentiert die Konfliktdateien. Sobald die Konflikte gelöst sind, wird die Zusammenführung fortgesetzt.

git checkout -b — Checke zuerst den Branch aus, der zusammengeführt werden soll

git add <file>

git commit — Fügen Sie die Dateien hinzu und übertragen Sie sie

git checkout master

git merge — Führen Sie den Zweig mit dem Master zusammen

git prune

Löscht (Prunes) die Dateien, die vom aktuellen Zweig nicht erreichbar sind. Es ist ein Reinigungsprozess, um nicht verwendete Dateien aus dem Zweig zu entfernen

git prune -n  — nicht beschneiden, nur zeigen, was alles beschnitten werden kann

git prune -v — zeigt die Ausgabe der vom Prune durchgeführten Aktionen

git prune --progress — zeigt den Fortschritt der Pflaume an

git fetch --prune — Beschneidet alle veralteten Zweige

git pull

Es empfängt Daten von einem entfernten Server zu einem funktionierenden Repository. Es aktualisiert den lokalen (funktionierenden) Zweig mit den neuesten Dateien aus dem Remote-Repo.

git pull — Ziehen Sie das Remote-Repo

git pull <repo URL> — Ziehen Sie einen bestimmten Remote-Zweig  

git push

Pusht alle lokalen Änderungen in das Remote-Repository. Es ist ein Upload-Prozess, der genau entgegengesetzt zu den Pull- und Abrufbefehlen ist

git checkout master  — Auschecken des Zweigs mit den neuesten Änderungen

git push origin master — Pushen Sie die Änderungen in das Remote-Repo

Beispiel:

C:\Users\geek>git checkout development_branch
Switched to branch 'development_branch'
C:\Users\geek>git push master development_branch
Enumerating objects: 4, done.
Counting objects: 100% (4/4), done.
Delta compression using up to 4 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (4/4), 612 bytes | 204.00 KiB/s, done.
Total 4 (delta 0), reused 0 (delta 0), pack-reused 0
To master
[development_branch] development_branch -> development_branch

Wir können auch push verwenden, um einen Remote-Zweig mit dem Befehl zu löschen git push --delete <branch>.

Beispielsweise:

C:\Users\geek>git push master --delete development_branch
To master
[deleted] development_branch

git rebase

Kombiniert mehrere Commits aus verschiedenen Zweigen, um ein neues endgültiges Basis-Commit zu erstellen. Nützlich vor dem Zusammenführen aller Änderungen, um Änderungen aus verschiedenen Zweigen einzeln (linear) zu übernehmen.

git rebase <branch name> — Kombinieren Sie die Commits zu einer endgültigen Basis

Wenn es Konflikte gibt, lösen Sie sie und fahren Sie mit dem Rebase fort:
git rebase --continue

Um Änderungen zu überspringen:
git rebase --skip

git remote

Überprüft die Konfiguration des Remote-Servers und ermöglicht den Verbindungszugriff zwischen Remote und Lokal.

git remote  – standardmäßig gibt es „origin“ zurück, den von Git vorgegebenen Standardnamen des Remote-Servers

git remote -v — listet Kurznamen und URLs aller verfügbaren Remote-Verbindungen auf

git remote add <short name> <remote url> — Fügen Sie den Remote-Server explizit zu den verfügbaren Verbindungen hinzu. Der Kurzname kann für Git-Befehle verwendet werden, anstatt die gesamte URL anzugeben.

git remote remove <remote url/short name> — entfernt den Remote-Server aus dem Repository

git reset

Gehen Sie zurück zu einem vorherigen Commit und verwerfen Sie Änderungen, die nach diesem Commit vorgenommen wurden

git reset <hash of the commit> — stellt das Repo mit dem angegebenen Commit wieder her. Git behält den Commit-Verlauf bei, sodass Sie einen weiteren Reset mit einem anderen Commit (Hash) durchführen können, um einen Reset rückgängig zu machen.

git rm

Entfernt die spezifische Datei aus Git. Sie können die Wirkung von rm mit dem Befehl reset oder checkout rückgängig machen

git rm <file_ name> — Entfernen Sie die spezifische Datei

Um Dateien aus Git zu entfernen, sie aber in Ihrem lokalen (Staging) zu behalten, verwenden Sie:

git rm --cached

git show

Zeigen Sie ein beliebiges Objekt wie Blob, Baum, Commit oder Tag an, indem Sie seinen SHA1 angeben

git show  — ohne Angabe der zeigt die Details des letzten Commits auf dem Zweig an.

git show <SHA1_id> — Zeigt den Inhalt des Objekts an, der durch seine SHA1-ID angegeben ist, z. B. Blob-ID, Baum-ID usw. Verwenden Sie den Befehl, um den Objekttyp zu überprüfen git cat-file -t

git show –pretty — zeigt die Ausgabe in einem hübschen Format.

Sie können ein benutzerdefiniertes Format bereitstellen:

git show --pretty = ‘format:Name: <format>’ Oder Sie können eines der kurzen, vollständigen, einzeiligen, mittleren oder vollständigeren Formate verwenden, zum Beispiel:

git show --pretty= ‘medium’ – Dies zeigt den Autor, das Datum, den Titel und die vollständige Commit-Nachricht

git show --abbrev-commit — um SHA1 abzukürzen

git stash

Um Branches ohne Commit im aktuellen Branch zu wechseln, speichern Sie die nicht festgeschriebenen Daten sicher

git stash — speichert den Arbeits- und Indexstatus

git stash save <message> — Geben Sie beim Speichern eine Nachricht ein

git stash list  — Zeigen Sie die Liste der gespeicherten Inhalte an

git stash apply — Übertragen Sie die gespeicherten Änderungen. Um die Änderungen eines bestimmten Stashs anzuwenden, verwenden Sie die Stash-Index-ID zusammen mit apply

git stash show — Zeigen Sie den Inhalt der gespeicherten Dateien an

git stash drop — entfernt den neuesten Stash aus der Warteschlange

git status

Zeigen Sie den Status des Repositorys und des Staging an, dh den Status vor der Commit-Phase. Sie können diesen Befehl nach jedem anderen Git-Befehl verwenden, wie z. B. dem Hinzufügen, Aktualisieren oder Entfernen einer Datei

git status — Zeigt die Änderungen an, die festgeschrieben werden sollen, oder nicht nachverfolgte (keine inszenierte) Änderungen

Wenn Sie beispielsweise eine Datei mit dem Namen samplefile.txt in Ihrem Arbeitsverzeichnis hinzufügen und prüfen, ob sie hinzugefügt wurde, können Sie den obigen Befehl eingeben. Es ergibt sich die Ausgabe wie folgt:

On branch master
No commits yet
Changes to be committed:
(use "git rm --cached …" to unstage)
new file: samplefile.txt

git tag

Freundliche Referenzen werden verwendet, um Meilensteine ​​oder Referenzpunkte im Code anzuzeigen

git tag <tag_name> — Erstellen Sie ein Tag mit dem angegebenen Namen

git tag — listet alle verfügbaren Tags auf

git tag show <tag_name> — Details des angegebenen Tags anzeigen

git tag -l “.*” — Tags anzeigen, die dem angegebenen Muster oder den angegebenen Zeichen entsprechen

gitk

Startet die Git-Benutzeroberfläche, die den Inhalt, Commits, vollständige Unterschiede und andere Details in einem Fenster anzeigt

gitk — Öffnen Sie das Git-Repo in einem Fenster zur Visualisierung

git version

Verwenden Sie den Befehl git version, um die Version des von Ihnen verwendeten Git zu überprüfen.

C:\Users\geekflare>git version
git version 2.38.0.windows.1

Final Words

Dieser Beitrag hat die am häufigsten verwendeten Git-Befehle mit ihren Optionen aufgelistet.

Als nächstes können Sie die GitHub-Scanner für Anmeldeinformationen.

Danke an unsere Sponsoren
Weitere großartige Lektüre zum Thema Entwicklung
Treiben Sie Ihr Geschäft an
Einige der Tools und Dienste, die Ihr Unternehmen beim Wachstum unterstützen.
  • Invicti verwendet das Proof-Based Scanning™, um die identifizierten Schwachstellen automatisch zu verifizieren und innerhalb weniger Stunden umsetzbare Ergebnisse zu generieren.
    Versuchen Sie es mit Invicti
  • Web-Scraping, Wohn-Proxy, Proxy-Manager, Web-Unlocker, Suchmaschinen-Crawler und alles, was Sie zum Sammeln von Webdaten benötigen.
    Versuchen Sie es mit Brightdata
  • Semrush ist eine All-in-One-Lösung für digitales Marketing mit mehr als 50 Tools in den Bereichen SEO, Social Media und Content-Marketing.
    Versuchen Sie es mit Semrush
  • Intruder ist ein Online-Schwachstellenscanner, der Cyber-Sicherheitslücken in Ihrer Infrastruktur findet, um kostspielige Datenschutzverletzungen zu vermeiden.
    MIT DER INTELLIGENTEN SCHADENKALKULATION VON Intruder