git-secret

:busts_in_silhouette: A bash-tool to store your private data inside a git repository.

Github星跟踪图

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 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 keychain using git secret killperson 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 security@wemake.services

Changelog

git-secret uses semver. See CHANGELOG.md.

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.

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.

主要指标

概览
名称与所有者sobolevn/git-secret
主编程语言Shell
编程语言Makefile (语言数: 3)
平台
许可证MIT License
所有者活动
创建于2016-02-15 10:16:53
推送于2025-06-02 15:32:58
最后一次提交2025-04-21 18:17:17
发布数20
最新版本名称v0.5.0 (发布于 2022-06-05 11:56:12)
第一版名称prerelease (发布于 2016-03-13 13:07:49)
用户参与
星数3.9k
关注者数36
派生数202
提交数1k
已启用问题?
问题数516
打开的问题数88
拉请求数462
打开的拉请求数13
关闭的拉请求数166
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?