Ändern Sie das Commit-Datum Git
git-edit-date ist ein kostenloses Linux CLI, das Festschreibungsdaten, Autorennamen usw. ändert.
und E-Mail in Ihrer aktuellen Filiale. Exportieren Sie den Verlauf nach CSV, bearbeiten Sie Zeitstempel in Excel oder
LibreOffice, apply einmal – nein git commit --amend, kein interaktives rebase.
Ändern Datum des Autors, Datum des Committers, Name des Autors und
E-Mail in großen Mengen. Funktioniert für einen einzelnen Tip-Commit oder Dutzende von Commits im aktuellen Zweig –
einschließlich des Verlaufs, den Sie bereits gepusht haben (mit --force-with-lease).
Warum CSV?
- Massenänderungen – Ändern Sie die Daten mehrerer Commits in einer Tabelle
- Visuelle Überprüfung – Sortieren Sie nach Datum, erkennen Sie Zeitzonenabweichungen, vergleichen Sie die Zeitstempel von Autor und Committer
- Ein Befehl an apply – Bearbeiten Sie CSV und führen Sie es aus
apply, Erledigt
Neu hier? Beginnen Sie mit dem Schritt-für-Schritt-Anleitung oder lesen Sie die FAQ.
Beispiel
Angenommen, Ihr Protokoll sieht so aus – falsche E-Mail, Zeitstempel in UTC bei 3 am:
a1b2c3d Alice <alice@wrong.com> 2024-03-06 03:14 +0000 Fix login
e4f5a6b Alice <alice@wrong.com> 2024-03-06 03:15 +0000 Add tests
9f8e7d6 Alice <alice@work.com> 2024-03-05 14:30 +0100 Fix login
c5b4a39 Alice <alice@work.com> 2024-03-05 15:00 +0100 Add tests
Was sich geändert hat: E-Mail und Daten des Autors. Die Nachrichten bleiben gleich; Commit-Hashes sind neu (Verlauf neu geschrieben).
Vorgehensweise
1. Exportieren Sie den aktuellen Zweig:
git-edit-date export -o commits.csv
2. Öffnen Sie CSV und korrigieren Sie die Felder, die Sie interessieren:
author_email,author_date,committer_date
alice@wrong.com,2024-03-06T03:14:00Z,2024-03-06T03:14:00Z
alice@wrong.com,2024-03-06T03:15:00Z,2024-03-06T03:15:00Z
author_email,author_date,committer_date
alice@work.com,2024-03-05T14:30:00+01:00,2024-03-05T14:30:00+01:00
alice@work.com,2024-03-05T15:00:00+01:00,2024-03-05T15:00:00+01:00
3. Anwenden und drücken:
git-edit-date apply -file=commits.csv
git push --force-with-lease
Vollständige Komplettlösung: So ändern Sie die Commit-Daten von git.
Autorendatum ändern
Git speichert zwei Zeitstempel: Datum des Autors (als das Werk geschrieben wurde) und
Datum des Committers (als das Commit-Objekt erstellt wurde). Bearbeiten Sie im CSV
author_date (und optional author_name /
author_email) unabhängig davon committer_date.
Tiefer Einblick: So ändern Sie das Autordatum von git · Autorendatum vs. Commit-Datum.
Installation
curl -LO https://giteditdate.com/git-edit-date_amd64.deb
sudo dpkg -i git-edit-date_amd64.deb
Kopf hoch
- Schreibt den Commit SHAs nur für den aktuellen Zweig neu
- Macht GPG-Signaturen bei neu geschriebenen Commits ungültig
- Needs
git push --force-with-leasewenn der Zweig bereits gepusht wurde