Field notes

Notes from the edge of the repo.

Long-form deep-dives on Git internals, recovery, and the commands you only learn after losing work twice. Each post deep-links into a scenario or lesson so the theory lands with a real terminal underneath.

  1. ·13 min read·amend

    How to amend the author of your last commit in Git

    Committed with the wrong git config — work email instead of personal, or your old name? Here are the exact commands to fix the author of one commit, of several commits, and to prevent it ever happening again.

    Read post
  2. ·14 min read·rebase

    Git rebase to reorder commits: a step-by-step guide

    Five commits ready to push, but in the wrong order for review? Here is exactly how git rebase -i reorders commits, what happens when reordering hits a conflict, and when you should and should not reorder.

    Read post
  3. ·13 min read·recovery

    How to recover a deleted Git branch (even after git branch -D)

    Deleted a Git branch by mistake? The commits live on for ~90 days. Here are the exact reflog and git fsck commands to bring a deleted branch back, with realistic walkthroughs.

    Read post
  4. ·11 min read·recovery

    git reflog: the undo button you didn't know you had

    Every commit you've ever made is recoverable for at least 30 days, even after a hard reset, a bad rebase, or a deleted branch. Here's how reflog works and the exact commands to bring lost work back.

    Read post
  5. ·15 min read·workflows

    Choosing a Git workflow: a decision guide for real teams

    Trunk-based, Gitflow, GitHub Flow, GitLab Flow, Release Flow — five workflows, three questions about your team, one matrix that tells you which to use. With evidence and real examples.

    Read post
  6. ·14 min read·gitflow

    Gitflow in 2026: still useful, or time to move on?

    Gitflow has a bad reputation online, but it still earns its weight for versioned SDKs, regulated industries, and long support windows. Here is when it is right, and when it is wrong.

    Read post
  7. ·15 min read·migration

    Migrating from Gitflow to trunk-based development: a step-by-step playbook

    A team that tried to migrate from Gitflow to trunk-based development overnight ground to a halt for three weeks. Here is a realistic five-phase playbook that takes 2 to 4 months.

    Read post
  8. ·14 min read·monorepo

    Monorepo Git techniques: sparse checkout, partial clones, and staying fast at scale

    A 5 GB monorepo with a 14-minute clone is fixable. Sparse checkout, partial clones, commit-graph, and fsmonitor — practical Git techniques for monorepos at scale.

    Read post
  9. ·13 min read·multi-repo

    Multi-repo coordination: submodules, subtrees, and internal packages compared

    Three honest approaches to sharing code across many repos — Git submodules, Git subtrees, and internal package registries. When each fits, and the pitfalls of each.

    Read post
  10. ·14 min read·release-branches

    Release branches and hotfix workflows that don't lose commits

    A hotfix shipped to prod but never made it back to develop, then got reverted three weeks later. Here is how release branches and hotfix workflows actually work without losing commits.

    Read post
  11. ·14 min read·scaling

    Scaling a Git workflow: solo, small, medium, and large teams

    The Git workflow that worked at 5 engineers breaks at 30, and the one that works at 30 is overkill at 5. Here is what changes at each team-size boundary, with concrete examples.

    Read post
  12. ·14 min read·trunk-based

    Trunk-based development: when it wins and when it doesn't

    Trunk-based development works for teams that have automated tests, feature flags, and a fast review culture. Without those, it hurts. Here is when TBD wins, when it loses, and why.

    Read post