English ▾ Themen ▾ Neueste Version ▾ git-sh-setup zuletzt aktualisiert in 2.43.0

NAME

git-sh-setup - Gemeinsamer Setup-Code für Git-Shell-Skripte

SYNOPSIS

. "$(git --exec-path)/git-sh-setup"

BESCHREIBUNG

Dies ist kein Befehl, den der Endbenutzer jemals ausführen möchte. Diese Dokumentation richtet sich an Personen, die die Porcelain-ähnlichen Skripte studieren und/oder neue schreiben.

Das Skriptlet git sh-setup ist so konzipiert, dass es von anderen Shell-Skripten (mithilfe von .) gesourced wird, um einige Variablen einzurichten, die auf die normalen Git-Verzeichnisse und einige Hilfs-Shell-Funktionen verweisen.

Bevor Sie es sourcen, sollte Ihr Skript einige Variablen einrichten; USAGE (und LONG_USAGE, falls vorhanden) wird verwendet, um die von der Shell-Funktion usage() angezeigte Nachricht zu definieren. SUBDIRECTORY_OK kann gesetzt werden, wenn das Skript aus einem Unterverzeichnis des Arbeitsbaums ausgeführt werden kann (einige Befehle tun dies nicht).

Das Skriptlet setzt die Shell-Variablen GIT_DIR und GIT_OBJECT_DIRECTORY, exportiert sie jedoch nicht in die Umgebung.

FUNKTIONEN

die

Beendet nach Ausgabe der bereitgestellten Fehlermeldung an den Standard-Fehlerstrom.

usage

Beendet mit der Nutzungsnachricht.

set_reflog_action

Setzt die Umgebungsvariable GIT_REFLOG_ACTION auf einen gegebenen String (typischerweise den Namen des Programms), sofern sie nicht bereits gesetzt ist. Jedes Mal, wenn das Skript einen git-Befehl ausführt, der Refs aktualisiert, wird ein Reflog-Eintrag erstellt, der den Wert dieses Strings verwendet, um den Datensatz darüber zu hinterlassen, welcher Befehl die Ref aktualisiert hat.

git_editor

Führt einen Editor Ihrer Wahl (GIT_EDITOR, core.editor, VISUAL oder EDITOR) für eine gegebene Datei aus, schlägt aber fehl, wenn kein Editor angegeben ist und das Terminal "dumb" ist.

is_bare_repository

Gibt true oder false an den Standard-Ausgabestrom aus, um anzuzeigen, ob es sich bei dem Repository um ein "bare" Repository handelt (d. h. ohne zugehörigen Arbeitsbaum).

cd_to_toplevel

Führt `chdir` zum obersten Verzeichnis des Arbeitsbaums aus.

require_work_tree

Prüft, ob das aktuelle Verzeichnis innerhalb des Arbeitsbaums des Repositories liegt, und beendet andernfalls das Skript mit einem Fehler.

require_work_tree_exists

Prüft, ob der dem Repository zugehörige Arbeitsbaum existiert, und beendet andernfalls das Skript mit einem Fehler. Wird oft vor dem Aufruf von `cd_to_toplevel` durchgeführt, was unmöglich ist, wenn kein Arbeitsbaum vorhanden ist.

require_clean_work_tree <aktion> [<hinweis>]

Prüft, ob der Arbeitsbaum und der Index des Repositories keine unbestätigten Änderungen an verfolgten Dateien aufweisen. Andernfalls wird eine Fehlermeldung der Form Kann nicht <aktion>: <grund>. <hinweis> ausgegeben und das Skript beendet. Beispiel:

require_clean_work_tree rebase "Please commit or stash them."
get_author_ident_from_commit

Gibt Code aus, der mit `eval` verwendet werden kann, um die Variablen GIT_AUTHOR_NAME, GIT_AUTHOR_EMAIL und GIT_AUTHOR_DATE für einen gegebenen Commit zu setzen.

create_virtual_base

Modifiziert die erste Datei so, dass nur gemeinsame Zeilen mit der zweiten Datei übrig bleiben. Wenn es unzureichendes gemeinsames Material gibt, wird die erste Datei leer gelassen. Das Ergebnis ist als virtueller Basis-Input für eine 3-Wege-Zusammenführung geeignet.

GIT

Teil der git[1] Suite