Setup and Config
Getting and Creating Projects
Basic Snapshotting
Branching and Merging
Sharing and Updating Projects
Inspection and Comparison
Patching
Debugging
External Systems
Server Admin
Guides
- gitattributes
- Command-line interface conventions
- Everyday Git
- Frequently Asked Questions (FAQ)
- Glossary
- Hooks
- gitignore
- gitmodules
- Revisions
- Submodules
- Tutorial
- Workflows
- All guides...
Administration
Plumbing Commands
- 2.47.0 10/06/24
- 2.45.1 → 2.46.2 no changes
- 2.45.0 04/29/24
- 2.44.1 → 2.44.2 no changes
- 2.44.0 02/23/24
- 2.43.1 → 2.43.5 no changes
- 2.43.0 11/20/23
- 2.42.1 → 2.42.3 no changes
- 2.42.0 08/21/23
- 2.38.1 → 2.41.2 no changes
- 2.38.0 10/02/22
- 2.35.1 → 2.37.7 no changes
- 2.35.0 01/24/22
- 2.30.1 → 2.34.8 no changes
- 2.30.0 12/27/20
- 2.29.1 → 2.29.3 no changes
- 2.29.0 10/19/20
- 2.28.1 no changes
- 2.28.0 07/27/20
- 2.27.1 no changes
- 2.27.0 06/01/20
- 2.21.1 → 2.26.3 no changes
- 2.21.0 02/24/19
- 2.13.7 → 2.20.5 no changes
- 2.12.5 09/22/17
- 2.10.5 → 2.11.4 no changes
- 2.9.5 07/30/17
- 2.5.6 → 2.8.6 no changes
- 2.4.12 05/05/17
- 2.3.10 no changes
- 2.2.3 09/04/15
- 2.1.4 no changes
- 2.0.5 12/17/14
ÜBERSICHT
git init [-q | --quiet] [--bare] [--template=<template-directory>] [--separate-git-dir <git-dir>] [--object-format=<format>] [-b <branch-name> | --initial-branch=<branch-name>] [--shared[=<permissions>]] [<directory>]
BESCHREIBUNG
Dieser Befehl erzeugt ein leeres Git-Repository – im Grunde ein .git
-Verzeichnis mit Unterverzeichnissen für objects
, refs/heads
, refs/tags
und für die Template-Dateien. Eine initialer Branch ohne jegliche Commits wird erstellt (siehe die Option --initial-branch
unten für dessen Namen).
Wenn die Umgebungsvariable $GIT_DIR
gesetzt ist, dann gibt sie einen Pfad an, der anstelle von ./.git
für die Basis des Repositorys verwendet werden soll.
If the object storage directory is specified via the $GIT_OBJECT_DIRECTORY
environment variable then the sha1 directories are created underneath; otherwise, the default $GIT_DIR/objects
directory is used.
Das Ausführen von git init
in einem bestehenden Repository ist ungefährlich. Es wird nichts überschrieben, was dort bereits vorhanden ist. Der Hauptgrund für das erneute Ausführen von git init
ist das Aufnehmen neu hinzugefügter Templates (oder das Verschieben des Repositorys an einen anderen Ort, wenn --separate-git-dir
angegeben wird).
OPTIONEN
- -q
- --quiet
-
Nur Fehler- und Warnmeldungen ausgeben; alle anderen Meldungen werden ausgeblendet.
- --bare
-
Erstellt ein Bare-Repository. Wenn die Umgebungsvariable
GIT_DIR
nicht festgelegt ist, wird sie auf das aktuelle Arbeitsverzeichnis angewendet. - --object-format=<Format>
-
Spezifiziert das angegebene Objektformat (Hash-Algorithmus) für das Repository. Die gültigen Werte sind sha1 und, falls aktiviert, sha256. sha1 ist die Voreinstellung.
Warning
|
Missing See original version for this content. |
- --template=<template-directory>
-
Gib das Verzeichnis an, aus dem Templates verwendet werden sollen (Siehe unten den Abschnitt „TEMPLATE VERZEICHNIS“).
- --separate-git-dir=<git-dir>
-
Instead of initializing the repository as a directory to either
$GIT_DIR
or./.git/
, create a text file there containing the path to the actual repository. This file acts as a filesystem-agnostic Git symbolic link to the repository.If this is a reinitialization, the repository will be moved to the specified path.
- -b <Branch-Name>
- --initial-branch=<Branch-Name>
-
Verwendet den angegebenen Namen für den initialen Branch im neu erstellten Repository. Falls nicht angegeben, wird auf den Standardnamen zurückgegriffen (derzeit
master
, aber dies kann sich in Zukunft ändern; der Name kann über die Konfigurationsvariableinit.defaultBranch
angepasst werden). -
Bestimmt, dass das Git-Repository von mehreren Benutzern gemeinsam genutzt werden soll. Dadurch können Benutzer, die derselben Gruppe angehören, in dieses Repository pushen. Falls spezifiziert, wird die config-Variable "core.sharedRepository" so angelegt, dass Dateien und Verzeichnisse unter
$GIT_DIR
mit den angeforderten Berechtigungen erstellt werden. Wenn nichts angegeben ist, wird Git die von umask(2) gelieferten Berechtigungen verwenden.Die Option kann die folgenden Werte annehmen, wobei group die Standardeinstellung ist, falls kein Wert angegeben wird:
- umask (oder false)
-
Verwendet die von umask(2) gelieferten Berechtigungen. Die Voreinstellung, falls
--shared
nicht angegeben ist. - group (oder true)
-
Make the repository group-writable, (and g+sx, since the git group may not be the primary group of all users). This is used to loosen the permissions of an otherwise safe umask(2) value. Note that the umask still applies to the other permission bits (e.g. if umask is 0022, using group will not remove read privileges from other (non-group) users). See 0xxx for how to exactly specify the repository permissions.
- all (oder world oder everybody)
-
Das gleiche wie group, aber macht das Repository für alle Benutzer lesbar.
- <perm>
-
<perm> is a 3-digit octal number prefixed with
0
and each file will have mode <perm>. <perm> will override users' umask(2) value (and not only loosen permissions as group and all do). 0640 will create a repository which is group-readable, but not group-writable or accessible to others. 0660 will create a repo that is readable and writable to the current user and group, but inaccessible to others (directories and executable files get theirx
bit from ther
bit for corresponding classes of users).
Standardmäßig ist das Konfigurationsflag receive.denyNonFastForwards
in gemeinsam genutzten Repositorys aktiviert, sodass Sie keinen „non-fast-forward“ Push erzwingen können.
Wenn Sie ein Directory (Verzeichnis) angeben, wird der Befehl innerhalb dieses Verzeichnisses ausgeführt. Wenn dieses Verzeichnis nicht existiert, wird es erstellt.
TEMPLATE DIRECTORY
Dateien und Verzeichnisse im Template-Verzeichnis, deren Name nicht mit einem Punkt beginnt, werden nach der Erstellung in das $GIT_DIR
kopiert.
Das Template-Verzeichnis wird aus folgender Einstellung generiert (Reihenfolge nach Priorität):
-
dem Argument, das mit der Option
--template
angegeben wurde; -
dem Inhalt der Umgebungs-Variablen
$GIT_TEMPLATE_DIR
; -
der Konfigurations-Variablen
init.templateDir
; oder -
dem standardmäßigen Template-Verzeichnis:
/usr/share/git-core/templates
.
Das standardmäßige Template-Verzeichnis enthält eine gewisse Verzeichnisstruktur, vorgeschlagene „Ausschlussmuster“ (siehe gitignore[5]) und Beispiele für Hook-Dateien.
Die Beispiel-Hooks sind automatisch alle deaktiviert. Diese Hooks können aktiviert werden, indem die Datei-Erweiterung .sample
entfernt wird.
Siehe githooks[5] für generelle Informationen zur Hook-Anwendung.
BEISPIELE
- Ein neues Git-Repository mit einer vorhandenen Code-Basis anlegen
-
$ cd /Pfad/zu/meiner/Code-Basis $ git init (1) $ git add . (2) $ git commit (3)
-
Erstellt das Verzeichnis /Pfad/zu/meiner/Code-Basis/.git.
-
Fügt alle vorhandenen Dateien zum Index hinzu.
-
Zeichnet den Urzustand als ersten Commit im Verlauf des Repositorys auf.
-
KONFIGURATION
Warning
|
Missing See original version for this content. |
Warning
|
Missing See original version for this content. |
GIT
Teil der git[1] Suite