GitXplorerGitXplorer
s

git-secret

public
3779 stars
199 forks
93 issues

Commits

List of commits on branch master.
Verified
03da0c188689ec70f8aa345bc317a554378b5704

Bump JamesIves/github-pages-deploy-action from 4.7.1 to 4.7.2 (#1126)

ddependabot[bot] committed a month ago
Verified
83e10a9145c8b9f192a043d2613b22194a84c683

Bump Vampire/setup-wsl from 3 to 4 (#1125)

ddependabot[bot] committed a month ago
Verified
25309ff67f1859cbd0f602385af6ae4b40d897bc

Bump JamesIves/github-pages-deploy-action from 4.6.9 to 4.7.1 (#1118)

ddependabot[bot] committed 2 months ago
Verified
16e1c9f8356807890f3bdeec9f084dc2536d7b2b

Bump actions/github-script from 6 to 7 (#1124)

ssobolevn committed 2 months ago
Verified
01f080c61ad6cd9f192b4ab60d95384ec8c5a39e

Update Dockerfiles with Ubuntu to 24.04 (#1123)

ssobolevn committed 2 months ago
Verified
beff3c2d0ebec021bfc3d878e134b92b57126c65

Bump debian from 12.7-slim to 12.8-slim in /.ci/docker-ci/debian-gnupg2 (#1107)

ddependabot[bot] committed 2 months ago

README

The README file for this repository.

git-secret

test release-ci Homebrew Supporters

git-secret

What is git-secret?

git-secret is a bash tool which stores private data inside a git repo. git-secret encrypts files with permitted users' public keys, allowing users you trust to access encrypted data using pgp and their secret keys.

With git-secret, changes to access rights are simplified, and private-public key issues are handled for you.

When someone's permission is revoked, secrets do not need to be changed with git-secret - just remove their key from the repo's keyring using git secret removeperson their@email.com, re-encrypt the files, and they won't be able to decrypt secrets anymore. If you think the user might have copied the secrets or keys when they had access, then you should also change the secrets.

Preview

git-secret terminal preview

Installation

git-secret supports brew, just type: brew install git-secret

It also supports apt and yum. You can also use make if you want to. See the installation section for the details.

Requirements

git-secret relies on several external packages:

  • bash since 3.2.57 (it is hard to tell the correct patch release)
  • gawk since 4.0.2
  • git since 1.8.3.1
  • gpg since gnupg 1.4 to gnupg 2.X
  • sha256sum since 8.21 (on freebsd and MacOS shasum is used instead)

Contributing

Do you want to help the project? Find an issue and send a PR. It is more than welcomed! See CONTRIBUTING.md on how to do that.

Security

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 security.

If you found any security related issues, please do not disclose it in public. Send an email to mail@sobolevn.me

Changelog

git-secret uses semver. See CHANGELOG.md.

Packagers

Thanks to all the people and groups who package git-secret for easier install on particular OSes and distributions!

Packaging status

Here are some packagings of git-secret that we're aware of:

Such packages are considered 'downstream' because the git-secret code 'flows' from the git-secret repository to the various rpm/deb/dpkg/etc packages that are created for specific OSes and distributions.

We have also added notes specifically for packagers in CONTRIBUTING.md.

Sponsors

Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [Become a sponsor]

Sponsors

Backers

Thanks to all our backers!

Backers

Contributors

This project exists thanks to all the people who contribute. [Contribute].

License

MIT. See LICENSE.md for details.

Thanks

Special thanks to Elio Qoshi from ura for the awesome logo.