GitLocker
Protect source code on the Git hosts you already use: encrypted paths are stored as ciphertext on remotes and in history. Start with the free CLI and Personal Provider; SaaS key hosting is optional.
Protect source code on the Git hosts you already use: encrypted paths are stored as ciphertext on remotes and in history. Start with the free CLI and Personal Provider; SaaS key hosting is optional.
GitLocker protects encrypted repository content on the Git server. For the paths you encrypt, a host cannot read plaintext blobs, and a copied repository does not expose those files without the project key.
GitLocker does not protect plaintext already checked out into a working tree.
The product is Git repository encryption with pluggable key providers. Start by installing the free CLI and using the Personal Provider. GitBraints SaaS Server Provider is an optional upgrade for hosted keys and Grant. It is not a second encryption product.
| Layer | What it protects | Typical control |
|---|---|---|
| Git layer | Ciphertext blobs on the remote and in history | Private repos, Git hosting ACL, branch protection |
| Key layer | Project encryption key | Personal local storage, or optional SaaS / Key Server custody |
Source is exposed only when Git ciphertext and the project key leak together.
Keys stay on the local machine. GitBraints does not receive project keys on this path. This is the right start for individual developers and offline use. No GitBraints account is required.
“Keys are never uploaded” is true for the Personal Provider. It is not true for SaaS.
GitBraints can host usable project keys so you can manage many repositories and Grant fetch access. Collaborators keep using their own gitl login.
SaaS is not zero-knowledge. It holds usable keys. Its value is convenience and Grant, not replacing Git hosting ACL, and not a Cloud HSM or Team KMS.
The Server Key Provider does not accept password login. Sign in to GitBraints in the browser (including MFA), then either:
/activate./cli/authorize; the loopback callback receives a one-time code, not an access token.Manage repository keys at /home/gitlocker or /home/[team]/gitlocker. Exporting a plaintext key requires an email OTP. Team accounts exist for invite and Grant. They are not a second GitLocker login tenant.
GitLocker uses AES-256-GCM authenticated encryption. If ciphertext is truncated or tampered with, decryption fails closed. Filters must not emit plaintext, corrupt ciphertext, or partial output.
Daily user commands are gitl init, gitl encrypt <path>, gitl decrypt <path>, plus ordinary git add / git commit / git push. Git filters run for Git; they are not daily commands.
gitl encrypt applies going forward. It does not rewrite older Git history into ciphertext by default.
Recommended flow:
Session revoke (CLI logout) manages login state. It is not the same as emergency project-key revoke.
Product seats are billing and plan-limit containers. They are not a required encryption layer.