Zum Inhalt springen

Staging Area

oder auch Index (Git)

Männliche Person, frontal, schaut in die Kamera; trägt kariertes Hemd über dunkelfarbigem T‑Shirt; heller Innenraum mit unscharfem Monitor oder Poster links und Fenster rechts.

von Richard Albrecht am 30.10.2026

Die Staging Area ist die Vormerkliste für das, was in den nächsten Commit soll. Sie sitzt zwischen dem Arbeitsverzeichnis und dem Repository: Du änderst Dateien, merkst einen Teil davon vor und schreibst nur diesen Teil in die Geschichte. Englisch to stage heißt bereitstellen.

Staging Area

Die Vormerkliste für das, was in den nächsten Commit soll.
Beispiel: „In der Staging Area liegen zwei der fünf geänderten Dateien, der Rest wartet.“

Auch: Index, Stage. In der Ausgabe von Git heißt sie meist schlicht „staged“.

Gefüllt wird sie mit git add, geleert mit git restore --staged.

Wozu die Staging Area gut ist

Vier Kästen nebeneinander: Arbeitsverzeichnis, Staging Area, lokales Repository und Remote. Dazwischen zeigen Pfeile nach rechts add, commit und push, darunter nach links fetch, pull und clone.
Wer die vier Orte vor Augen hat, liest jeden Befehl als Richtung.

Sie trennt zwei Fragen, die sonst zusammenfallen: Was habe ich geändert, und was davon gehört zusammen? Wer an einem Nachmittag drei Dinge anfasst, kann daraus drei Commits machen, jeden mit seiner eigenen Begründung.

Das klingt nach Buchhaltung und zahlt sich in dem Moment aus, in dem eine Änderung zurückgenommen werden muss. Ein Commit, der genau eine Sache tut, lässt sich herausnehmen; einer, der fünf Sachen tut, nicht.

Warum die Staging Area als überflüssig gilt

Weil andere Werkzeuge ohne sie auskommen und viele Leute sie mit git commit -a überspringen. Dann wandert alles Geänderte in einem Zug in die Geschichte, und der Zwischenschritt entfällt.

Für kleine Änderungen ist das in Ordnung. Sobald mehrere Themen gleichzeitig offen sind, holt man sich damit genau die unübersichtlichen Commits ein, die später niemand mehr auseinandernehmen kann.

Was in der Staging Area oft übersehen wird

Dass sie einen Stand einfriert. Wer eine Datei vormerkt und danach weiterbearbeitet, hat zwei Fassungen: die vorgemerkte und die aktuelle. Der Commit nimmt die vorgemerkte.

Daher die Verwunderung, wenn eine gerade getippte Zeile nicht im Commit auftaucht. Ein zweites git add nach der letzten Änderung räumt das aus.

Siehe auch:

Git

Das Werkzeug, das jede Änderung an einem Projekt festhält und mehrere Stände nebeneinander erlaubt.

#Deployment & Versionierung

Commit

Ein festgehaltener Stand des Projekts, mit Zeitpunkt, Urheber und Begründung.

#Deployment & Versionierung

Arbeitsverzeichnis (Git)

Der Ordner mit den Dateien, an denen du gerade arbeitest.

#Deployment & Versionierung

Repository

Der Ort, an dem ein Projekt samt seiner gesamten Geschichte liegt.

#Deployment & Versionierung

Push (Git)

Das Übertragen eigener Commits zum gemeinsamen Stand.

#Deployment & Versionierung

Build-Pipeline

Der eingerichtete Ablauf, der aus einem Stand im Repository ein ausgeliefertes Ergebnis macht.

#Programmiersprachen