Git Clients

git-crypt – transparent encryption of files in Git

git-crypt provides transparent encryption and decryption of selected files inside Git repositories. It is designed for projects where most content can be shared normally, but certain files contain information that should only be accessible to authorised collaborators.

The software uses Git filters to encrypt protected files when they are committed and decrypt them in an authorised working copy. Once configured, users can continue performing ordinary Git operations without manually encrypting and decrypting files.

git-crypt is not intended to encrypt an entire repository. Filenames, commit messages and other metadata remain visible, and previously authorised users cannot be prevented from accessing historical content for which they already hold the necessary keys.

This is free and open source software.

Key Features

  • Transparent encryption and decryption of selected files using Git filters.
  • Specify encrypted paths and filename patterns through .gitattributes.
  • AES-256 encryption using a synthetic initialisation vector derived from an HMAC.
  • Support for sharing encrypted content with collaborators through GnuPG keys.
  • Alternative symmetric-key mode without requiring GnuPG.
  • Export repository encryption keys for secure transfer to authorised users.
  • Unlock encrypted content in authorised working copies.
  • Allow users without keys to clone repositories containing encrypted files.
  • Multiple encryption keys within a repository for different groups of files or users.
  • Inspect which files are encrypted or unencrypted using git-crypt status.
  • Detect files that should have been encrypted but were added without protection.
  • Deterministic encryption so Git can recognise unchanged protected content.
  • Preserve ordinary Git workflows for unencrypted files in the same repository.
  • Integrate with Git-based development workflows without requiring a separate encryption server.

Website: www.agwa.name/projects/git-crypt
Support:
Developer: Andrew Ayer and contributors
License: GNU General Public License v3.0

git-crypt is written in C++. Learn C++ with our recommended free books and free tutorials.


Related Software

Git Storage and Security Tools
git-lfsGit extension for versioning large files
JujutsuPowerful version control system for software projects
git-bugDistributed offline-first bug tracker
DashRich terminal UI for GitHub
git-secretsPrevent adding secrets into git repositories
CommitizenCreate well-structured Git commit messages
git-repairRepair various forms of damage to git repositories
git-secretBash tool which stores private data inside a git repo
git-annexManage files with git without checking the file contents into git
gitmoji-cliUse gitmojis in Git commit messages
ghqOrganise local clones of remote repositories
git-cryptTransparent file encryption in git
gitaManage multiple git repos
git-chglogCHANGELOG generator implemented in Go
cz-gitCommitizen adapter and command-line tool
gitpaneMulti-repo Git workspace dashboard
git-trimKeep Git working directories clear of stale local branches
gfoldKeep track of multiple Git repositories
GardenCommand runner and multi-repo Git configuration tool
maniManage collections of Git repositories
GitSocialGit-native cross-forge collaboration
git-freshRefresh Git working copies from the terminal
Forge SparksGet Git forges notifications
gohomeGit standup and activity reporting CLI
git-appraiseDistributed code review system for Git repositories

Read our verdict in the software roundup.


Best Free and Open Source Software LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.

We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more.

Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion.

Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
0 Comments
Oldest
Newest Most Voted