English ▾ Themen ▾ Neueste Version ▾ gitk zuletzt aktualisiert in 2.51.1

NAME

gitk - Der Git-Repository-Browser

SYNOPSIS

gitk [<options>] [<revision-range>] [--] [<path>…​]

BESCHREIBUNG

Zeigt Änderungen in einem Repository oder einer ausgewählten Menge von Commits an. Dies beinhaltet die Visualisierung des Commit-Graphen, die Anzeige von Informationen zu jedem Commit und die Dateien in den Bäumen jeder Revision.

OPTIONEN

Um zu steuern, welche Revisionen angezeigt werden, unterstützt gitk die meisten Optionen, die für den Befehl git rev-list gelten. Es unterstützt auch einige Optionen, die für die Befehle git diff-* gelten, um zu steuern, wie die durch jeden Commit eingeführten Änderungen angezeigt werden. Schließlich unterstützt es einige gitk-spezifische Optionen.

gitk versteht im Allgemeinen nur Optionen mit Argumenten im stuck-Format (siehe gitcli[7]) aufgrund von Einschränkungen im Kommandozeilenparser.

rev-list Optionen und Argumente

Diese Handbuchseite beschreibt nur die am häufigsten verwendeten Optionen. Eine vollständige Liste finden Sie unter git-rev-list[1].

--all

Zeige alle Refs (Branches, Tags usw.).

--branches[=<Muster>]
--tags[=<Muster>]
--remotes[=<Muster>]

Verhalte dich so, als ob alle Branches (Tags, Remote-Branches usw.) auf der Kommandozeile als <commit> aufgelistet wären. Wenn <Muster> angegeben ist, beschränke die Refs auf diejenigen, die dem angegebenen Shell-Glob entsprechen. Wenn das Muster ?, * oder [ fehlt, wird implizit /* am Ende angehängt.

--since=<Datum>

Zeige Commits, die neuer als ein bestimmtes Datum sind.

--until=<Datum>

Zeige Commits, die älter als ein bestimmtes Datum sind.

--date-order

Sortiere Commits nach Datum, wenn möglich.

--merge

Zeigt nach einem Merge-Versuch, der mit Konflikten abgebrochen wurde, die Commits in der Historie zwischen zwei Branches (d.h. HEAD und MERGE_HEAD) an, die die konfligierenden Dateien ändern und nicht auf allen zusammengeführten Heads existieren.

--left-right

Markiere, von welcher Seite einer symmetrischen Differenz ein Commit erreichbar ist. Commits von der linken Seite sind mit einem <-Symbol und die von der rechten Seite mit einem >-Symbol vorangestellt.

--full-history

Beim Filtern der Historie mit <Pfad>…​ werden einige Historien nicht abgeschnitten. (Siehe "History simplification" in git-log[1] für eine detailliertere Erklärung.)

--simplify-merges

Zusätzliche Option zu --full-history, um einige unnötige Merges aus der resultierenden Historie zu entfernen, da keine ausgewählten Commits zu diesem Merge beitragen. (Siehe "History simplification" in git-log[1] für eine detailliertere Erklärung.)

--ancestry-path

Wenn ein Bereich von Commits zum Anzeigen angegeben wird (z.B. commit1..commit2 oder commit2 ^commit1), werden nur Commits angezeigt, die direkt auf der Abstammungskette zwischen commit1 und commit2 liegen, d.h. Commits, die Nachkommen von commit1 und Vorfahren von commit2 sind. (Siehe "History simplification" in git-log[1] für eine detailliertere Erklärung.)

-L<Start>,<Ende>:<Datei>
-L:<Funktionsname>:<Datei>

Verfolgt die Entwicklung des durch <Start>,<Ende> gegebenen Zeilenbereichs oder durch den regulären Ausdruck des Funktionsnamens <Funktionsname> innerhalb der <Datei>. Sie dürfen keine Pfadspezifikationsbegrenzer angeben. Dies ist derzeit auf einen Walk beschränkt, der von einer einzelnen Revision ausgeht, d.h. Sie können nur null oder ein positives Revisionsargument angeben, und <Start> und <Ende> (oder <Funktionsname>) müssen in der Startrevision vorhanden sein. Sie können diese Option mehrmals angeben. Impliziert --patch. Die Patch-Ausgabe kann mit --no-patch unterdrückt werden, aber andere Diff-Formate (insbesondere --raw, --numstat, --shortstat, --dirstat, --summary, --name-only, --name-status, --check) sind derzeit nicht implementiert.

<Start> und <Ende> können eine der folgenden Formen annehmen:

  • <Nummer>

    Wenn <Start> oder <Ende> eine Zahl ist, gibt sie eine absolute Zeilennummer an (Zeilen werden ab 1 gezählt).

  • /<Regulärer Ausdruck>/

    Diese Form verwendet die erste Zeile, die dem gegebenen POSIX-<Regulärer Ausdruck> entspricht. Wenn <Start> ein regulärer Ausdruck ist, wird vom Ende des vorherigen -L-Bereichs, falls vorhanden, ansonsten vom Anfang der Datei gesucht. Wenn <Start> ^/<Regulärer Ausdruck>/ ist, wird vom Anfang der Datei gesucht. Wenn <Ende> ein regulärer Ausdruck ist, wird ab der von <Start> angegebenen Zeile gesucht.

  • +<Offset> oder -<Offset>

    Dies ist nur für <Ende> gültig und gibt eine Anzahl von Zeilen vor oder nach der von <Start> angegebenen Zeile an.

Wenn :<Funktionsname> anstelle von <Start> und <Ende> angegeben ist, ist dies ein regulärer Ausdruck, der den Bereich vom ersten Funktionsnamen-Zeile, der <Funktionsname> entspricht, bis zur nächsten Funktionsnamen-Zeile bezeichnet. :<Funktionsname> sucht vom Ende des vorherigen -L-Bereichs, falls vorhanden, ansonsten vom Anfang der Datei. ^:<Funktionsname> sucht vom Anfang der Datei. Die Funktionsnamen werden auf die gleiche Weise bestimmt wie git diff Hunk-Header ermittelt (siehe Defining a custom hunk-header in gitattributes[5]).

<Revisionsbereich>

Beschränkt die anzuzeigenden Revisionen. Dies kann entweder eine einzelne Revision sein, die bedeutet, von der angegebenen Revision an zurück anzuzeigen, oder ein Bereich der Form "<von>..<bis>", um alle Revisionen zwischen <von> und zurück bis <bis> anzuzeigen. Beachten Sie, dass fortgeschrittenere Revisionsauswahlen angewendet werden können. Eine vollständigere Liste der Möglichkeiten, Objekt-Namen zu schreiben, finden Sie unter gitrevisions[7].

<Pfad>…​

Beschränkt Commits auf diejenigen, die Dateien in den angegebenen Pfaden betreffen. Beachten Sie, um Mehrdeutigkeiten bezüglich der Revisionsnamen zu vermeiden, verwenden Sie "--", um die Pfade von den vorhergehenden Optionen zu trennen.

gitk-spezifische Optionen

--argscmd=<Befehl>

Befehl, der jedes Mal ausgeführt werden soll, wenn gitk den anzuzeigenden Revisionsbereich ermitteln muss. Der Befehl wird erwartet, dass er auf seiner Standardausgabe eine Liste von zusätzlichen anzuzeigenden Revisionen ausgibt, eine pro Zeile. Verwenden Sie dies anstelle der expliziten Angabe eines <Revisionsbereichs>, wenn die anzuzeigende Menge von Commits zwischen Aktualisierungen variieren kann.

--select-commit=<ref>

Wählt den angegebenen Commit nach dem Laden des Graphen aus. Das Standardverhalten entspricht der Angabe von --select-commit=HEAD.

Beispiele

gitk v2.6.12.. include/scsi drivers/scsi

Zeigt die Änderungen seit Version v2.6.12 an, die eine Datei in den Unterverzeichnissen include/scsi oder drivers/scsi geändert haben.

gitk --since="2 weeks ago" -- gitk

Zeigt die Änderungen der letzten zwei Wochen an der Datei gitk an. Das "--" ist notwendig, um Verwechslungen mit dem Branch namens gitk zu vermeiden.

gitk --max-count=100 --all -- Makefile

Zeigt maximal 100 Änderungen an der Datei Makefile an. Anstatt nur nach Änderungen im aktuellen Branch zu suchen, wird in allen Branches gesucht.

Dateien

Benutzerkonfiguration und Voreinstellungen werden gespeichert unter

  • $XDG_CONFIG_HOME/git/gitk, falls vorhanden, andernfalls

  • $HOME/.gitk, falls vorhanden.

Wenn keine der obigen existiert, wird $XDG_CONFIG_HOME/git/gitk erstellt und standardmäßig verwendet. Wenn $XDG_CONFIG_HOME nicht gesetzt ist, wird es in allen Fällen standardmäßig auf $HOME/.config gesetzt.

Historie

Gitk war der erste grafische Repository-Browser, geschrieben von Paul Mackerras in Tcl/Tk.

gitk wird tatsächlich als unabhängiges Projekt gepflegt, aber stabile Versionen werden als Teil der Git-Suite zur Bequemlichkeit der Endbenutzer verteilt.

gitk-git/ stammt aus Johannes Sixt's gitk-Projekt

https://github.com/j6t/gitk

SIEHE AUCH

qgit(1)

Ein Repository-Browser, geschrieben in C++ unter Verwendung von Qt.

tig(1)

Ein minimaler Repository-Browser und Git-Tool-Output-Highlighter, geschrieben in C unter Verwendung von Ncurses.

GIT

Teil der git[1] Suite