Go to file
Josh Rabinowitz 65fe4c4127
Add verbose option to 'git secret tell' showing output of key imports (#321)
* add 'git secret tell -v' option to show output of key imports
* add tests for tell with/without -v
* remove unneeded test code and bats diagnostic output
2019-01-26 22:59:13 -05:00
.ci travis-ci changes: remove ansible v2.3, fix brew build issue 2019-01-11 10:14:22 -05:00
.Dockerfiles Fixing issues with docker 17.07 ce and systemd 2017-11-27 10:55:31 -07:00
.github PR template: new branches should be from master (#299) 2019-01-06 16:08:07 -05:00
man WIP: test with expired key, add 'whoknows -l' (#287) 2018-12-05 09:43:48 +03:00
RFC final final, finally 2018-06-15 08:55:33 +01:00
src Add verbose option to 'git secret tell' showing output of key imports (#321) 2019-01-26 22:59:13 -05:00
tests Add verbose option to 'git secret tell' showing output of key imports (#321) 2019-01-26 22:59:13 -05:00
utils support FreeBSD (#260) 2018-09-22 23:08:21 +03:00
.editorconfig fixes after makefile crash 2016-02-21 16:26:17 +03:00
.gitattributes fixes after makefile crash 2016-02-21 16:26:17 +03:00
.gitignore Updating ignore files 2017-09-20 23:05:06 -06:00
.kitchen.yml Disable gnupg-git test on debian strech, gpg >=2.2.12 requires libassuan 2019-01-04 15:50:59 -07:00
.travis.yml Disable gnupg-git test on debian strech, gpg >=2.2.12 requires libassuan 2019-01-04 15:50:59 -07:00
CHANGELOG.md remove unused functions (#313) 2019-01-24 11:57:07 -05:00
CONTRIBUTING.md added notes about packages and for package maintainers (#301) 2019-01-14 23:16:41 -05:00
Gemfile Add local ci tests. 2017-09-24 08:03:05 -06:00
git-secret.plugin.zsh Adds fixes to subdirectories bug. 2017-03-06 00:46:49 +03:00
LICENSE.md CONTRIBUTING.md added 2016-07-02 16:18:53 +03:00
Makefile WIP: Force mode for hide and reveal (#263) 2018-10-10 21:21:58 -04:00
README.md fix link to homebrew, update CHANGELOG.md 2019-01-17 09:18:55 -05:00

git-secret

Backers on Open Collective Sponsors on Open Collective Build Status Homebrew Bintray deb

git-secret

What is git-secret?

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 gpg, allowing permitted users to access encrypted data using their secret keys. With 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 their@email.com, and re-encrypt the files, and they won't be able to decrypt secrets anymore.

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 OSX 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 security@wemake.services

Changelog

git-secret uses semver. See CHANGELOG.md.

Contributors

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

Packagers

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

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.

Backers

Thank you to all our backers! 🙏 [Become a backer]

Sponsors

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

License

MIT. See LICENSE.md for details.

Thanks

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