Git Commit: Snapshots erstellen in Git

Mit Git Commit erstellen Sie Snapshots Ihrer Fortschritte und speichern so Ihre Änderungen. Der Befehl gehört daher zu den wichtigsten Commands bei der Arbeit an einem Projekt.

Mehr als nur eine Domain!

Hier finden Sie Ihre perfekte Domain - z.B. .de Domain + persönlicher Berater

E-Mail-Postfach
24/7 Support
Wildcard SSL

Was ist Git Commit?

Der Git Command Git Commit ist bei der Arbeit an einem Projekt einer der wichtigsten und meistgenutzten Befehle. Wenn Sie Änderungen an einem Projekt vornehmen, diese auf Herz und Nieren getestet haben und nun zufrieden damit sind, erstellen Sie mit diesem Command einen Snapshot des aktuellen Stands. Git betrachtet diesen Snapshot als sichere Version und nimmt nur dann Änderungen daran vor, wenn es ausdrücklich dazu aufgefordert wird. Wenn Sie mit einem lokalen Repository arbeiten, erstellt Git Commit hier auch den Snapshot, ohne dass dieser Auswirkungen auf andere Repositories hat. Diese können durch Git Push und Git Pull darauf zugreifen.

Das ist auch der Unterschied zwischen Git und SVN. Der dezentrale Ansatz von Git erlaubt Entwicklerinnen und Entwicklern die gleichzeitige Arbeit an einem und demselben Projekt. Jedes Teammitglied hat dann die Möglichkeit, den eigenen Entwicklungsstand im lokalen Repository mit Git Commit festzuhalten. Das bewahrt Änderungen nicht nur für den Moment, sondern erlaubt Ihnen zusätzlich, zu einem späteren Zeitpunkt auf den entsprechenden Stand zurückzugreifen. Dadurch erhöht sich die Sicherheit und der Schutz vor Fehlern deutlich. Sie sollten daher in regelmäßigen Abständen und nach größeren Veränderungen Git Commits durchführen.

Funktionsweise und Syntax von Git Commit

Durch die Arbeit in einer isolierten Umgebung können Sie nach der besten Lösung für ein Problem suchen, ohne dabei das zentrale Repository zu verändern. Erst wenn Sie eine Änderung gründlich getestet haben, wenden Sie diese Änderungen dann auf das Gesamtprojekt an. Git Commit bewahrt zu diesem Zweck alle einzelnen Speicherstände und erlaubt Ihnen so den Rückgriff auf ältere Snapshots. Die Syntax von Git Commit ist dabei im Grundsatz immer gleich, kann allerdings um Argumente erweitert werden. Mit folgendem Standardbefehl führen Sie einen Git Commit im Staging-Bereich aus. Über den Texteditor fügen Sie dann eine Nachricht ein und speichern den Snapshot.

git commit

Weitere Optionen von Git Commit

Erweitern Sie Git Commit um ein Argument, können Sie den jeweiligen Snapshot noch im Vorfeld anpassen und so Ihren Workflow optimieren.

Änderungen im Arbeitsverzeichnis speichern

Mit dem Argument -a erstellen Sie einen Snapshot sämtlicher Änderungen im Arbeitsverzeichnis. Berücksichtigt werden dabei all jene Dateien, die irgendwann über Git Add zum lokalen Repository hinzugefügt wurden. So sieht der passende Befehl aus:

git commit -a

Nachricht einfügen

Durch die Option -m können Sie den Umweg über den Texteditor vermeiden. Wie oben beschrieben, werden Sie normalerweise dazu aufgefordert, bei der Erstellung eines Snapshot mit Git Commit auch eine erklärende Nachricht einzufügen. Mit -m machen Sie diesen Schritt direkt.

git commit -m "Hier steht Ihre Erklärung"

Kombination aus beiden Optionen

Auch eine Kombination der beiden obigen Optionen ist für Hauptnutzerinnen und -nutzer möglich. So werden alle Änderungen im Arbeitsverzeichnis berücksichtigt und direkt eine Erklärung mitgeschickt.

git commit -am "Hier steht Ihre Erklärung"

Git Commits verändern

Mit dieser Option ändern Sie Ihren letzten Git Commit. Neue Änderungen werden zum letzten Snapshot hinzugefügt. Die Änderungen nehmen Sie über den Texteditor vor.

git commit --amend

Beispiel für einen Git Commit

Nun zeigen wir Ihnen, wie Git Commit in der Praxis aussieht. In unserem Beispiel haben wir an einer Datei gearbeitet und möchten diese Änderungen nun festhalten. Dazu verschieben wir sie zuerst in den Staging-Bereich mit dem Befehl Git Add:

git add beispiel.py

Mit dem Befehl Git Status können wir nun überprüfen, ob die Datei in den Staging-Bereich aufgenommen worden ist:

git status
On branch main
Changes to be committed:
(use "git reset HEAD <file>…" to unstage)</file>
new file: beispiel.py

Entspricht der Status Ihren Vorstellungen, können Sie Git Commit durchführen:

git commit

Im Anschluss wird Ihr Texteditor geöffnet. Zwar können Sie die Erklärung grundsätzlich frei formulieren, es ist allerdings gebräuchlich, mit einer Zusammenfassung von ca. 50 Zeichen anzufangen, dann eine leere Zeile einzuschieben und im Anschluss eine genaue Erklärung der einzelnen Änderungen zu formulieren. So stellen Sie sicher, dass alle Teammitglieder Ihre Änderungen schnell nachvollziehen können. Zeilen, die mit einer Raute (#) beginnen, werden in der Erklärung ignoriert. Bleibt die Erklärung komplett leer, wird der Git Commit nicht durchgeführt.

Git Commits löschen

Es ist zwar grundsätzlich möglich, einen Git Commit zu löschen, allerdings wird das nur in absoluten Ausnahmefällen empfohlen. Durch die Löschung können große Probleme entstehen, insbesondere dann, wenn Sie in einem Team arbeiten. Löschen Sie in Ihrem lokalen Repository einen Git Commit, während Ihre Teammitglieder mit dem alten Stand weiterarbeiten, sind Ihre Ausgangspunkte nicht mehr identisch – dadurch kann es zu Fehlern bei der Zusammenführung kommen. Über den Befehl Git Revert können Sie Änderungen rückgängig machen, ohne die History Ihres Repositories zu verändern. Eine endgültige Löschung eines Git Commits führen Sie über den Command Git Reset durch. Diesen finden Sie neben vielen anderen in unserem Git Cheat Sheet zum PDF-Download.

Tipp

In nur drei Schritten Ihr eigenes Projekt online bringen! Mit Deploy Now von IONOS führen Sie Git Push, Build und Deploy ganz einfach selbst aus. Profitieren Sie dabei von vielen nützlichen Features, einem schnellen Setup und maximaler Skalierbarkeit.