rewrite-authors

Change author and committer names and emails in existing commits.

Usagegit-wrangler rewrite-authors --name <name> --email <email> [options]

Warning: This rewrites Git history. Coordinate with collaborators and use git-wrangler push --force when publishing the result.

Quick start

git-wrangler rewrite-authors \
  --name "Jane Doe" \
  --email "jane@example.com"

What it does

rewrite-authors changes both the author and committer identity on selected local branch commits. It previews the operation and asks once before rewriting.

All local branch commits are selected unless date filters are provided. Repositories without matching commits are skipped.

Before you run it

git-filter-repo is required. Git Wrangler refreshes origin first and records the changed commits so rollback-rewrites can restore them later.

Options

Option Default What it does
--name <name> Required Set the new author and committer name.
--email <email> Required Set the new author and committer email.
--rewrite-after YYYY-MM-DD Include commits on or after this current author date.
--rewrite-before YYYY-MM-DD Include commits before this current author date.
--repo <path> Whole workspace Rewrite exactly one repository.
--no-fetch Off Skip refreshing origin; remote information may be old.
--yes, -y Off Skip the rewrite confirmation.
--guided Off Choose options through prompts.

More examples

# Rewrite commits currently dated in 2025
git-wrangler rewrite-authors \
  --name "Jane Doe" \
  --email "jane@example.com" \
  --rewrite-after 2025-01-01 \
  --rewrite-before 2026-01-01

# Rewrite one repository while offline
git-wrangler rewrite-authors \
  --repo ./api \
  --no-fetch \
  --name "Jane Doe" \
  --email "jane@example.com"