Skip to content
Novus Examples
txt587 B

Mailmap - All Four Rewrite Forms

One line for each of the four rewrite forms git's mailmap supports, including the two-pair form that matches on the commit name as well as the email. Four aliases collapse onto three canonical authors, which is exactly the transformation a shortlog or contributor report has to reproduce.

Preview — first 15 linestxt
# All four forms the format allows, one per line.

# 1. proper name only, matched on commit email
Miguel Otero <miguel.otero@example.invalid>

# 2. proper email only, matched on commit email
<priya.raman@example.invalid> <praman@example.invalid>

# 3. proper name and email, matched on commit email
Ada Fernsby <ada.fernsby@example.invalid> <ada@laptop.example.invalid>

# 4. proper name and email, matched on BOTH commit name and commit email
Ada Fernsby <ada.fernsby@example.invalid> Ada F <ada.f@example.invalid>
Ada Fernsby <ada.fernsby@example.invalid> ada <ada@ci.example.invalid>

Specifications

Seed
20260807
Repository Name
.mailmap
Rules
5
Forms
4
Identities Coalesced
4
Canonical Authors
3
Line Endings
LF
Encoding
UTF-8

Testing contract

Expected to pass
Scenario
Apply the mailmap to a commit authored by 'ada <ada@ci.example.invalid>'.
Expected result
The author is rewritten to Ada Fernsby <ada.fernsby@example.invalid>; the five rules resolve four aliases onto three distinct people.

What is a .txt file?

TXT is a plain-text file containing unformatted character data with no styling or structure beyond line breaks. Its interpretation depends on character encoding, most commonly UTF-8, and on line-ending convention. It is the most universal and portable text container.

How to use this file

Use an example TXT to test encoding detection, line-ending (LF versus CRLF) handling, and any tool that reads or streams raw text input.

How to use this file for testing

“Mailmap - All Four Rewrite Forms” is a deterministic Novus Examples fixture for Config parsing, Config testing, Visual diff / regression. TOML and INI configuration files with nested sections and typed values — for testing config parsers and loaders.

Documented properties for this file: seed 20260807 · UTF-8 · LF. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.

Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.

Diff and patch fixtures name their target paths and the exact edge case they exercise — rename, mode change, binary hunk, CRLF↔LF, or missing trailing newline. Apply or render them against the documented before-state; every author, path, and hash is fictional.

Point your config loader at the file and assert it reads the documented sections and typed values, including any deliberately-tricky nesting or comments.

Generated by generation/version_control.py. Free for any use, no attribution required — license.