Secrets never leave in a commit

Passwords, keys and tokens are caught before they reach your repository, so your history stays clean and nothing needs rotating in a hurry.

A drawing of a commit on its way to your repository. A password, a key and a token stop at a line marked "Caught before your repository". Only the work crosses it, into your repository with a clean history. A note below reads "Nothing to rotate in a hurry".
  • Passwords, keys and tokens are caught before they reach your repository.
  • Your history stays clean, with no credential written into it.
  • Nothing needs rotating in a hurry.

A password, a key or a token that slips into a commit is caught before it reaches your repository. Your history stays clean. Nobody on your team has to drop everything to replace a credential.

What you get

A repository history without credentials in it, and no emergency to clean up after.

Most engineering teams know the moment. Someone spots an access key sitting in a commit from last week. From then on it is a race: work out what the key opens, create a new one, swap it in wherever the old one was used, and hope nobody found it first. A repository remembers everything it is given, so taking the key out of the history is a careful job of its own.

That race is costly even when nothing bad comes of it. It pulls your best people off planned work for a day. It also leaves a question behind that is hard to answer with confidence: did anyone else see it?

The work lands in your own code repository. Passwords, keys and tokens are caught before they reach it. Three things follow for you.

History that stays clean. What arrives in your repository is the work, not a credential that came along by accident.

No rotation in a hurry. A key that never reached your repository is not a key you have to replace tonight.

One less finding to chase. A credential in source history is one of the first things a careful security review looks for. Here it is caught before it can become one.

What it looks like in practice

Picture an ordinary week. Changes arrive in your repository: a fix to the sign-up form, a new report, a library upgrade. Your team reads them, and you decide what ships. Nothing reaches your users without your approval.

What you do not get that week is a message that opens with “we need to rotate”. The repository your team clones, shares with a new hire or hands to an auditor holds the work, not a secret that leaked out with it.

For a technical leader, it means fewer evenings spent tracing where a key went. For a product leader, it is a week that is not lost to an urgent clean-up. And for whoever answers the security questionnaire, it is a straightforward line to write.

Two sides of one boundary

This pairs with working within the access you grant. That page is about what we can reach in your systems: we work within the access you grant, and nothing more. This one is about what comes back the other way. The changes that return to your repository bring the work, and the passwords, keys and tokens are caught before they get there.

What it is not

It is not a security audit, and it does not replace your own practice for handling credentials. It guards one common and costly mistake: a secret leaving in a commit.

Start with one small piece of work, and look at the history it leaves in your repository.

Start with one small first piece and judge the result yourself.

Questions leaders ask

What counts as a secret here?

Passwords, keys and tokens, the small strings that open a system to whoever holds them. Those are what is kept out of the commits that reach your repository.

Why does it matter if a key only reached a private repository?

Because a private repository rarely stays in one place. It gets cloned to laptops, shared with contractors and handed over in due diligence. A key in its history travels with every copy, and the safe response is to replace it. Keeping it out in the first place means there is nothing to replace.

Does this mean nothing sensitive can ever leak?

No. It guards one path that causes a great deal of trouble, a password, key or token leaving in a commit. How you store and share credentials elsewhere remains part of your own security practice.

Does this change who approves what ships?

No. You decide what ships. Nothing reaches your users without your approval. Keeping secrets out of commits is about what lands in your repository, and what goes live stays your decision.

Lift your eyes and let us carry the rest.

Talk to us and see what carrying your product forward looks like.

Book a conversation

Prefer to write directly? contact@zefana.com