For more years than I'd like to admit, my dotfiles were less a repository and more an oral tradition. A new machine meant half an hour of scp-ing a .zshrc from whatever box happened to be on, then a fortnight of noticing all the small things I'd forgotten to copy. The aliases I use forty times a day. The one git config that stops merges being a misery. Always the bits you only miss when they're gone.
This week I finally sat down and did it properly. Everything lives in one repo now, symlinked into place by a small bootstrap script. The trick that made it tolerable was being ruthless about what's actually mine versus what's machine-specific. Secrets and per-host bits stay out, sourced from a separate file that isn't tracked. The rest is a single git clone and one command away from a shell that feels like home.
The real win wasn't the tidiness. It's that I stopped being afraid of fresh machines. A new laptop used to be a small dread. Now it's fifteen minutes, and the only thing I have to remember is the repo URL. I should have done it a decade ago, which is what I say about every good bit of housekeeping right after I finally do it.