git init
Legt ein leeres Git-Repository an
Der Befehl 'git init' macht den aktuellen Ordner zu einem Git-Repository, indem er einen versteckten .git-Ordner anlegt. Das Repository startet leer: deine Dateien sind unverfolgt, bis du sie hinzufügst und committest. Ein erneuter Aufruf in einem bestehenden Repository ist sicher — er ändert nichts. Nutze ihn für ein ganz neues Projekt; für ein bestehendes nimm stattdessen git clone.
Syntax
git init [-q | --quiet] [-b <branch-name> | --initial-branch=<branch-name>] [<directory>]Optionen
Die richtige Option wählen
init oder clone
Zwei Wege zu einem Repository
| Befehl | Beginnt mit | Einsatz, wenn |
|---|---|---|
git init | Ein leeres Repository | Du ein neues Projekt startest |
git clone <url> | Eine vollständige Kopie eines Remote-Repositorys | Das Projekt schon existiert |
Beispiele
Hier ein Repository anlegen
git initLegt .git im aktuellen Ordner an.
Namen des ersten Branches wählen
git init -b mainDer erste Branch heißt main.
In einem neuen Ordner
git init shopLegt den Ordner shop mit einem Repository darin an.
Workflow-Beispiele
git init -b mainDas Repository anlegen
git add . && git commit -m "Initial commit"Erster Commit
git remote add origin git@github.com:you/shop.gitDas leere GitHub-Repository verknüpfen
git push -u origin mainVeröffentlichen
Fehlerbehebung
fatal: not a git repository
Ursache: Du bist außerhalb jedes Repositorys
Wechsle mit cd ins Projekt, oder führe dort git init aus
Der erste Branch heißt master
Ursache: init.defaultBranch ist nicht gesetzt
git init -b main, oder git config --global init.defaultBranch main
Tipps & Stolperfallen
Best Practices
- ✓Lege vor dem ersten Commit eine .gitignore an.
- ✓Setze init.defaultBranch einmal global.
Häufige Fehler
- ✗git init im Ordner eines bestehenden Repositorys ausführen und Repositorys verschachteln.
- ✗git init im Home-Ordner ausführen und den ganzen Rechner verfolgen.
- ✗git init + git remote add nutzen, wenn git clone das Projekt direkt kopieren würde.
FAQ
Lösche den versteckten .git-Ordner. Deine Dateien bleiben.
Ja. Es meldet "Reinitialized existing Git repository" und behält alles.