Go to file
joshr 4766df2110 improve error messages
in add, killperson, remove, tell, and main
2018-04-16 22:52:06 -04:00
.ci Merge branch 'small-fixes' of github.com:joshrabinowitz/git-secret into small-fixes 2018-04-16 13:33:30 -04:00
.Dockerfiles Fixing issues with docker 17.07 ce and systemd 2017-11-27 10:55:31 -07:00
.github Updated .github/ISSUE_TEMPLATE.md (optional) 2018-02-03 16:57:14 +09:00
man ronn/man doc improvements 2018-04-14 16:07:20 -04:00
src improve error messages 2018-04-16 22:52:06 -04:00
tests fix test to match _abort() output 2018-04-16 22:24:11 -04:00
utils typos fixed 2018-04-16 11:05:50 -04: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 use ansible version 2.5.0 2018-04-16 13:59:28 -04:00
.travis.yml Updating travis test matrix to reflect changes. 2017-11-27 16:45:19 -07:00
CHANGELOG.md refer to issue 141 and fix typos 2018-04-16 11:56:38 -04:00
CONTRIBUTING.md Updated CONTRIBUTING.md (optional) 2018-02-03 16:57:14 +09: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 Fix install-fpm target, typo in apk 2017-11-27 14:46:27 -07:00
README.md restore sponsor links 2018-04-14 08:41:12 -04: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 all users whom you trust using gpg. Therefore, everyone has access to these tracked files using only their personal secret key. With git-secret changes to access rights is made easy and private-public key issues are avoided. Passwords do not needed changing with git-secret and when someone is out - just delete their public key, re-encrypt the files, and they wont 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

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 enclose 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].

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.