← ClaudeAtlas

awesome-git-author-rewritelisted

Rewrites the author and committer identity on a commit — or on every commit carrying a wrong identity — and force-pushes it safely: ownership and write-access checks, a verified mirror backup, a counted hash blast radius, and a confirmation gate before anything irreversible. Takes a commit URL plus the replacement identity. Use when the wrong name or email is on a commit, when commits are not linked to the user's account, or 'переписать автора коммита'. Do not use to collapse a history into one commit (awesome-git-history-reset) or to change only a commit message (git commit --amend).
khasky/awesome-agent-skills · ★ 8 · Code & Development · score 78
Install: claude install-skill khasky/awesome-agent-skills
# Git Author Rewrite Replace the identity stamped on a commit — the `author` and `committer` name/email headers — with an identity the user actually owns, then force-push. The file tree, the commit messages, and the dates are preserved byte-for-byte; only the identity headers and, as a consequence, every affected commit hash change. Why the ceremony: identity lives *inside* the commit object, so changing it changes the commit's hash, and every descendant commit's hash with it. That makes this an irreversible rewrite of a shared remote, not an edit. The steps below each close a specific way it goes wrong: rewriting a hash range far larger than the user pictured, pushing without write access, replacing one unowned email with another unowned email so the attribution still doesn't land, silently invalidating signatures, or force-pushing over a teammate's commit you never saw. A second clone that never got reset will push the old identity back the next day. ## Core principle NOTHING IRREVERSIBLE UNTIL FIVE THINGS HOLD: the new identity is proven to belong to the user's account, write access is confirmed, a mirror backup exists and is verified, the hash blast radius has been counted and shown, and the user has explicitly confirmed. If any one is missing, stop at that gate. Four invariants hold throughout: - Never operate on the user's existing checkout. Work in a *fresh clone* in a scratch directory. If the rewrite is wrong, the scratch clone is disposable and the user's work