# Install git-crypt with Homebrew, apk, apt, dnf, MacPorts, Nix, pacman, scoop, zypper

Enable transparent encryption/decryption of files in a git repo. Version 0.8.0 via Homebrew; verified 2026-05-25.

## Install

```sh
sudo av install brew:git-crypt
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install git-crypt
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install git-crypt
```

  Evidence: MacPorts ports tree: devel/git-crypt/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- apk (92%):

```sh
sudo apk add git-crypt
```

  Evidence: Alpine Linux edge package indexes: git-crypt from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz

- Debian apt (92%):

```sh
sudo apt install git-crypt
```

  Evidence: Debian stable package indexes: git-crypt from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- dnf (92%):

```sh
sudo dnf install git-crypt
```

  Evidence: Fedora Rawhide package metadata: git-crypt from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#git-crypt
```

  Evidence: nixpkgs package indexes: pkgs/by-name/gi/git-crypt/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- pacman (92%):

```sh
sudo pacman -S git-crypt
```

  Evidence: Arch Linux sync databases: git-crypt from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- zypper (92%):

```sh
sudo zypper install git-crypt
```

  Evidence: openSUSE Tumbleweed package metadata: git-crypt from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst

### Windows

- Scoop (92%):

```sh
scoop install main/git-crypt
```

  Evidence: Scoop official bucket manifest trees: bucket/git-crypt.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:git-crypt
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/git-crypt>
- **Version:** 0.8.0
- **Source summary:** Enable transparent encryption/decryption of files in a git repo
- **Homepage:** <https://www.agwa.name/projects/git-crypt/>
- **Repository:** <https://github.com/AGWA/git-crypt>
- **Upstream docs:** <https://github.com/AGWA/git-crypt#readme>
- **License:** GPL-3.0-or-later
- **Source archive:** <https://www.agwa.name/projects/git-crypt/downloads/git-crypt-0.8.0.tar.gz>
- **Last updated:** 2026-05-25T16:07:30Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- git-crypt (cli)
- git-crypt (alias)

## Dependencies

- openssl@4

## Build dependencies

- docbook
- docbook-xsl

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 0.8.0
- Package-manager updated: 2026-05-25
- Local data: ok
- Upstream repository: https://www.agwa.name/projects/git-crypt/
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

git-crypt is Andrew Ayer's transparent encryption tool for selected files in a Git repository. It uses Git filters so protected files are encrypted in commits and decrypted in a working tree after the repository is unlocked.

### Project history

The Git history starts in July 2012, and the first release, 0.1, followed in November 2012. The author's project page explains the motivation: protecting secret material in a configuration-management repository while still letting other people inspect and contribute to the non-secret parts.

Version 0.4 in 2014 was a major workflow release: it added optional GPG support, stored the symmetric key inside `.git`, added multiple-key support, introduced `git-crypt status`, and began experimental Windows support. Version 0.5 in 2015 added the man page and improved lock and unlock performance with newer Git versions.

Later releases were maintenance-oriented. Version 0.6 in 2017 added OpenSSL 1.1 support, switched to C++11, honored Git configuration such as `gpg.program`, and added `git-crypt.repoStateDir`. Version 0.7 in 2022 addressed macOS argument-list issues, and version 0.8 in 2025 adjusted OpenSSL support and avoided problematic short GPG key IDs.

### Adoption history

git-crypt became a common answer for repositories that are mostly public or shareable but contain a small number of encrypted secrets. Its README and project page stress graceful degradation: contributors without the key can clone and commit, but cannot read encrypted file contents.

Package-manager adoption is broad for a niche security tool, with packages across Homebrew, Debian and Ubuntu, Fedora-family distributions, MacPorts, Nix, Arch-family repositories, Scoop, and others in the input metadata. That breadth reflects stable CLI demand rather than a large framework ecosystem.

### How it is used

Users initialize a repository with `git-crypt init`, mark protected paths in `.gitattributes` with `filter=git-crypt diff=git-crypt`, and unlock after cloning with either GPG keys or an exported symmetric key.

Practitioners use it for secrets that belong beside source or infrastructure code, such as private keys, passwords, API credentials, or environment-specific files. The documentation is explicit about limits: file names, commit messages, symlink targets, and other metadata are not encrypted, and access revocation is not solved for old history.

### Why package nerds care

git-crypt is significant because it turns Git's filter machinery into a packaging-friendly secrets workflow without requiring a service, a custom remote, or a separate encrypted repository. That simplicity made it attractive to developers who wanted secrets-in-repo ergonomics with ordinary Git hosting.

It also has the classic maintainer tradeoffs of a security CLI: OpenSSL compatibility, GPG behavior, Git filter semantics, deterministic encryption constraints, and clear documentation of what is not protected.

### Timeline

- 2012: Development begins in Git, followed by the 0.1 release.
- 2014: Version 0.4 adds optional GPG support, multiple-key support, status reporting, and experimental Windows support.
- 2015: Version 0.5 adds a man page and improves lock and unlock performance.
- 2017: Version 0.6 adds OpenSSL 1.1 support and switches to C++11.
- 2022: Version 0.7 fixes macOS and argument-handling issues.
- 2025: Version 0.8 adjusts OpenSSL support and avoids short GPG key IDs.

### Related projects

- git-remote-gcrypt is named in the README as a better fit for encrypting an entire repository.
- GnuPG is used by git-crypt's multi-user sharing mode.
- Git attributes and Git filter drivers are the Git mechanisms that make transparent encryption and decryption work.

### Sources

- <https://github.com/AGWA/git-crypt documents repository usage and source history.>
- <https://github.com/AGWA/git-crypt/blob/master/NEWS.md documents release progression from 0.1 through 0.8.>
- <https://www.agwa.name/projects/git-crypt documents the author, motivation, usage model, dependencies, limitations, and project resources.>


## Security Notes

broad file, network, media, or database tool signal.

- **Geiger risk:** blue / medium
- broad file, network, media, or database tool signal


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: .gitattributes, .git-crypt/
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** git-crypt
- **Version Scheme:** 0
- **Revision:** 1
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable

## Other Package-Manager Records

- Debian apt - git-crypt - 0.7.0-0.1+b1: normalized package name match | Debian stable package indexes: git-crypt from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Transparent file encryption in git | https://www.agwa.name/projects/git-crypt
- Nix - git-crypt: normalized package name match | nixpkgs package indexes: pkgs/by-name/gi/git-crypt/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - git-crypt - 0.7.0-0.1build3: normalized package name match | Ubuntu 24.04 LTS package indexes: git-crypt from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Transparent file encryption in git | https://www.agwa.name/projects/git-crypt
- apk - git-crypt - 0.7.0-r0: normalized package name match | Alpine Linux edge package indexes: git-crypt from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Transparent file encryption in git | https://www.agwa.name/projects/git-crypt
- apk - git-crypt-doc - 0.7.0-r0: normalized package name match | Alpine Linux edge package indexes: git-crypt-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Transparent file encryption in git (documentation) | https://www.agwa.name/projects/git-crypt
- dnf - git-crypt - 0.8.0-2.fc44: normalized package name match | Fedora Rawhide package metadata: git-crypt from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Transparent file encryption in git | https://www.agwa.name/projects/git-crypt
- pacman - git-crypt - 0.8.0-1: normalized package name match | Arch Linux sync databases: git-crypt from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Transparent file encryption in Git | https://www.agwa.name/projects/git-crypt
- zypper - git-crypt - 0.8.0-1.2: normalized package name match | openSUSE Tumbleweed package metadata: git-crypt from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Transparent file encryption in git | https://www.agwa.name/projects/git-crypt/
- MacPorts - git-crypt: normalized package name match | MacPorts ports tree: devel/git-crypt/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- Scoop - main/git-crypt: normalized package name match | Scoop official bucket manifest trees: bucket/git-crypt.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1


## Related links

- [Source-control packages](https://www.automicvault.com/pkg/source-control-tools/) - Belongs to a source-control command family.
- [Secret-risk packages](https://www.automicvault.com/pkg/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [openssl@4](https://www.automicvault.com/pkg/brew/openssl-4/) - Runtime dependency declared by Homebrew.
- [docbook](https://www.automicvault.com/pkg/brew/docbook/) - Build dependency declared by Homebrew.
- [docbook-xsl](https://www.automicvault.com/pkg/brew/docbook-xsl/) - Build dependency declared by Homebrew.
- [git-remote-gcrypt](https://www.automicvault.com/pkg/brew/git-remote-gcrypt/) - Shares av.db curated category or tags: cli, encryption, git, security.
- [transcrypt](https://www.automicvault.com/pkg/brew/transcrypt/) - Shares av.db curated category or tags: cli, encryption, git, secrets, security.
- [shush](https://www.automicvault.com/pkg/brew/shush/) - Shares av.db curated category or tags: cli, encryption, secrets, security.
- [cryfs](https://www.automicvault.com/pkg/brew/cryfs/) - Shares av.db curated category or tags: cli, encryption, security.
- [dislocker](https://www.automicvault.com/pkg/brew/dislocker/) - Shares av.db curated category or tags: cli, encryption, security.
- [git-secret](https://www.automicvault.com/pkg/brew/git-secret/) - Shares av.db curated category or tags: cli, encryption, git, secrets, security.
- [gocryptfs](https://www.automicvault.com/pkg/brew/gocryptfs/) - Shares av.db curated category or tags: cli, encryption, security.
- [ssh-vault](https://www.automicvault.com/pkg/brew/ssh-vault/) - Shares av.db curated category or tags: cli, encryption, security.

## Combined YAML source

View the package source record on GitHub. [combined/git-crypt.yml](https://github.com/automic-vault/db/blob/main/combined/git-crypt.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
