Modificare la data Git Commit
git-edit-date è un Linux CLI gratuito che modifica le date commit, il nome dell'autore,
ed e-mail sulla tua filiale attuale. Esporta la cronologia in CSV, modifica i timestamp in Excel o
LibreOffice, fare domanda una volta — no git commit --amend, nessun rebase interattivo.
Modifica data dell'autore, Data committer, nome dell'autore e
e-mail in blocco. Funziona con un singolo puntale commit o dozzine di commit sul ramo corrente —
inclusa la cronologia che hai già inviato (con --force-with-lease).
Perché CSV?
- Modifiche collettive - modifica le date di più commit in un foglio di calcolo
- Revisione visiva - ordina per data, individua la deriva del fuso orario, confronta i timestamp dell'autore con quelli di committer
- Un comando da applicare - modifica CSV, esegui
apply, Fatto
Nuovo qui? Inizia con il tutorial passo dopo passo oppure leggi il Domande frequenti.
Esempio
Supponiamo che il tuo log sia simile a questo: email errata, timestamp in UTC alle 3 del mattino:
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
Cosa è cambiato: email e date dell'autore. I messaggi rimangono gli stessi; Gli hash commit sono nuovi (riscrittura della cronologia).
Come
1. Esporta il ramo corrente:
git-edit-date export -o commits.csv
2. Apri CSV e correggi i campi che ti interessano:
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. Applicare e spingere:
git-edit-date apply -file=commits.csv
git push --force-with-lease
Procedura dettagliata completa: come modificare le date git commit.
Modifica la data dell'autore
Git memorizza due timestamp: data dell'autore (quando l'opera è stata scritta) e
Data committer (quando è stato creato l'oggetto commit). Nello CSV, modifica
author_date (e facoltativamente author_name /
author_email) indipendentemente da committer_date.
Immersione profonda: come modificare la data dell'autore git · data dell'autore rispetto alla data commit.
Installare
curl -LO https://giteditdate.com/git-edit-date_amd64.deb
sudo dpkg -i git-edit-date_amd64.deb
Head in su
- Riscrive commit SHAs solo sul ramo corrente
- Invalida le firme GPG sugli commit riscritti
- Esigenze
git push --force-with-leasese il ramo era già stato spinto