git-secret is a bash tool which stores private data inside a git repo.
git-secret encrypts tracked files with public keys for users whom you trust using
allowing permitted users to access encrypted data using their secret keys.
git-secret, changes to access rights are made easy and private-public key issues are handled for you.
Passwords do not need to be changed with
git-secret when someone's permission is revoked -
just remove their key from the keychain using
git secret killperson firstname.lastname@example.org,
and re-encrypt the files, and they won't be able to decrypt secrets anymore.
brew, just type:
brew install git-secret
It also supports
yum. You can also use
make if you want to.
See the installation section for the details.
git-secret relies on several external packages:
3.2.57(it is hard to tell the correct
In order to encrypt (git-secret hide -m) files only when modified, the path
mappings file tracks sha256sum checksums of the files added (git-secret add) to
git-secret's path mappings filesystem database. Although, the chances of
encountering a sha collision are low, it is recommend that you pad files with
random data for greater security. Or avoid using the
-m option altogether.
If your secret file holds more data than just a single password these
precautions should not be necessary, but could be followed for greater
If you found any security related issues, please do not enclose it in public. Send an email to
git-secret uses semver. See CHANGELOG.md.
This project exists thanks to all the people who contribute. [Contribute].
Thank you to all our backers!
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]
MIT. See LICENSE.md for details.