type: rule
status: active
timestamp: 2026-06-24
tags: [rule, git, identity, github, attribution, security]

Git identity — always use chirag127's GitHub noreply email

chirag127 noreply email for all commits

Git identity rule

Rule

Every commit from this machine uses the chirag127 GitHub noreply email:

user.name  = Chirag Singhal
user.email = [email protected]

Set this at:

  1. Global config: git config --global user.email "..." — covers any new clone.
  2. Per-repo config in the umbrella: git config user.email "..." — overrides any inheritance from .gitconfig stashes.
  3. Every submodule’s .git/config: the [user] section, if it exists, must match. Sweep with find .git/modules -name config -type f after any new submodule is added.

Why noreply, not [email protected] or [email protected]

Windows Credential Manager hygiene

The “Select an account” popup appears when Windows Credential Manager has MULTIPLE GitHub credentials stored (e.g. oriz-co, chirag127, x-access-token, chirag127). Keep ONLY chirag127. Delete the rest with cmdkey /delete:<target> or via the Credential Manager GUI.

Past commits stay

DO NOT rewrite [email protected] commits to the noreply email retroactively. The rewrite:

The .git history is append-only. Going forward = clean. Past = preserved as-is.

Verification

After any new submodule or after this machine is set up fresh:

# Should print the noreply email at every level
git config --global user.email
git config user.email   # in the umbrella
git submodule foreach 'git config user.email || git config --global user.email'

# And the credential manager should only show chirag127
cmdkey /list | findstr github

Edit on GitHub · Back to index