One GitHub Account Forever. Ditch Your Company Policy.

Your GitHub account is yours, not your company's. Here's how to keep your contribution graph intact across jobs.

One GitHub Account Forever. Ditch Your Company Policy.
Photo by Shubham Dhage on Unsplash

Keep one GitHub account for your entire career. Don't let companies talk you into creating throwaway accounts.

I've seen developers do this multiple times: join a new org, get told to create a fresh GitHub account "for security" or "for compliance," and just... go along with it. Three jobs later they have three dead accounts and their real profile looks like they started coding last year. All those green squares, gone.

GitHub's Terms of Service actually require one account per person. Section B.3: "One person or legal entity may maintain no more than one free Account." Machine/bot accounts are a separate thing, but for humans, one account.

And the green squares matter. I know they shouldn't be how we judge developers, but recruiters look at them, open source maintainers check your profile, future teammates glance at it when you're interviewing. You don't want that resetting every time you switch jobs.

"But my company wants a separate account"

GitHub already solved access control with organizations. One personal account can belong to unlimited orgs. You add your work email for commits and notifications. Org owners control repo access. When you leave, they remove you from the org. Your green squares stay. That's the whole setup.

And here's the thing companies don't seem to realize: even if you create georgeguimaraes-acme for them, that account is still yours. You can add any secondary email to it, rename it to whatever you want, change the password. The company has zero control over it. They're not gaining any security by asking you to create a separate account. They're just making you fragment your history for nothing.

Setting it up

Add your work email to your GitHub account under Settings > Emails, then configure git per-repo (or add some includeIf config in ~/.gitconfig):

cd ~/work/company-repo
git config user.email "[email protected]"

GitHub links both emails to your profile. You wouldn't create a brand-new LinkedIn every time you change jobs. Same thing here.

Keeping the green squares after you leave

When you leave a company and lose org access, your contributions to their private repos can disappear from your graph. Poof.

Star every repo you contribute to. Every time you open a PR or push a commit to a new repo, star it. GitHub used to document this explicitly as a way to retain contributions after leaving an org. They've since removed it from the docs, but it still works. Starring is just a bookmark, no code is copied, no NDA concern.

Also add your work email to your GitHub account under Settings > Emails. You don't even need to verify it. Just having it there is enough for GitHub to link those commits to your profile.

Do this from day one, not on your last day.

One profile. Your whole career. Keep it green.


George Guimarães builds agentic commerce infrastructure at New Generation. Previously: Principal Engineer at a unicorn fintech, co-founder of Plataformatec (acqui-hired by Nubank).


Great! You’ve successfully signed up.

Welcome back! You've successfully signed in.

You've successfully subscribed to George Guimarães..

Success! Check your email for magic link to sign-in.

Success! Your billing info has been updated.

Your billing was not updated.