🠄 Back to solutions

git-crypt

git-crypt provides transparent encryption for files in Git repositories, allowing secure sharing of projects with both public and private components.

Description

git-crypt is a transparent file encryption tool for Git repositories. It allows users to encrypt selected files within a repository, ensuring confidentiality while still enabling collaboration. Encryption and decryption happen automatically during commits and checkouts, respectively. It supports both symmetric key encryption and GPG-based encryption for multi-user scenarios. The system gracefully handles cases where users lack the decryption key, allowing for partial access to the repository. It's designed for situations where some files are sensitive, but the main repository can be publicly shared.

Features

Supports both symmetric and GPG-based encryption methods. Transparent encryption/decryption during Git operations. Uses AES-256 encryption for strong security. File selection for encryption is controlled through a `.gitattributes` file. Handles gracefully when users lack the decryption key, so parts of the project can still be accessed. No additional steps or commands outside standard Git workflows are required.

Benefits

Enhanced security for sensitive files within a Git repository without the need to remove these files, enabling collaboration while protecting confidential data. Transparent encryption and decryption, making it seamless for users. Flexibility to use either symmetric keys for private projects or GPG for collaboration. Graceful degradation, so users without the decryption key can still clone and contribute to the public parts of the project. Suitable for scenarios where only a few files need encryption.

Links

Home page
Key info
Open Source
European