# Install git-lfs with Homebrew, apk, chocolatey, apt, dnf, MacPorts, Nix, pacman, scoop, winget, zypper

Git extension for versioning large files. Version 3.7.1 via Homebrew; verified from local package data.

## Install

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

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install git-lfs
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install git-lfs
```

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

### Linux

- apk (92%):

```sh
sudo apk add git-lfs
```

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

- Debian apt (92%):

```sh
sudo apt install git-lfs
```

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

- dnf (92%):

```sh
sudo dnf install git-lfs
```

  Evidence: Fedora Rawhide package metadata: git-lfs 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-lfs
```

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

- pacman (92%):

```sh
sudo pacman -S git-lfs
```

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

- zypper (92%):

```sh
sudo zypper install git-lfs
```

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

### Windows

- Chocolatey (92%):

```sh
choco install git-lfs
```

  Evidence: Chocolatey community package catalog: git-lfs from http://community.chocolatey.org/api/v2/Packages?$filter=IsLatestVersion&$select=Id&$top=1000&$skiptoken='11','gawk'

- Scoop (92%):

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

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

- winget (92%):

```sh
winget install --id GitHub.GitLFS -e
```

  Evidence: Windows Package Manager source index: GitHub.GitLFS from https://cdn.winget.microsoft.com/cache/source.msix

## Package facts

- **Package key:** brew:git-lfs
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/git-lfs>
- **Version:** 3.7.1
- **Source summary:** Git extension for versioning large files
- **Homepage:** <https://git-lfs.com/>
- **Repository:** <https://github.com/git-lfs/git-lfs>
- **Upstream docs:** <https://git-lfs.com/>
- **License:** MIT
- **Source archive:** <https://github.com/git-lfs/git-lfs/releases/download/v3.7.1/git-lfs-v3.7.1.tar.gz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- git-lfs (cli)
- git-lfs (alias)

## Build dependencies

- asciidoctor
- go

## Install behavior

- Post-install hook: not defined
- Caveats: Update your git config to finish installation: # Update global git config $ git lfs install # Update system git config $ git lfs install --system
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 3.7.1
- Local data: ok
- Upstream repository: https://github.com/git-lfs/git-lfs
- info: No package-manager update timestamp was available.
- info: No cached GitHub release or tag data was available.
## Project history and usage

Git LFS is the reference command-line implementation and specification for storing large file contents outside ordinary Git blobs while keeping small pointer files in the repository. It became one of the standard answers for repositories that need to version art assets, datasets, media, archives, and other large binaries without making every clone carry every large object as normal Git history.

### Project history

The public git-lfs repository was created in 2013, and the changelog records v0.5.0 in April 2015 as the initial public release. The official specification preserves a clue from the pre-release era by documenting legacy pointer files that used a `hawser.github.com` version URL before the `git-lfs.github.com/spec/v1` pointer URL.

Git LFS reached v1.0.0 in October 2015. Before that milestone, v0.6.0 switched the client to the Batch API by default while retaining fallback to the legacy API. The 2.x line later removed old APIs and added features such as `git lfs migrate`, which rewrites history to convert large Git blobs into LFS objects.

### Adoption history

Git LFS matters because it is both a Git extension and a protocol/specification surface. The README describes pre-built binaries for macOS, Windows, Linux, and FreeBSD, Homebrew installation, Debian and RPM packages, Chocolatey installation, and inclusion in Git for Windows. That distribution footprint helped make LFS available to designers, game teams, data projects, and software teams using hosted Git services.

The project also has a maintainer model around a core team and alumni, public releases with signed hashes, official command documentation, an FAQ, and implementation notes. Those are signs of infrastructure-level Git tooling rather than a one-off helper script.

### How it is used

Practitioners run `git lfs install` once to configure clean and smudge filters, use `git lfs track` to add patterns to `.gitattributes`, commit that attributes file, and then add and push files as usual. Git LFS writes pointer files into Git and stores object contents under the LFS object store, uploading LFS objects before the Git push completes.

`git lfs migrate` is used when large files already exist in history and need to be moved into LFS, with the usual history-rewrite consequences. Operators also use `git lfs env`, tracing, signed release verification, and the command manpages when debugging installs or server interactions.

### Why package nerds care

Git LFS is package-nerd significant because it is a CLI, a Git filter integration, and a wire-format specification in one package. It shows how a package can become part of the developer-tooling substrate: package managers distribute the binary, Git invokes it through filters and hooks, and hosting platforms implement the matching storage API.

### Timeline

- 2013: Public GitHub repository created.
- 2015: v0.5.0 marked the initial public release.
- 2015: v0.6.0 used the Batch API by default.
- 2015: v1.0.0 released.
- 2017: v2.0.0 removed legacy APIs.
- 2017: v2.2.0 added `git lfs migrate`.

### Related projects

- Git LFS relates to Git attributes, clean and smudge filters, Git for Windows, and hosted Git LFS server implementations. Its problem space overlaps with artifact repositories and data-versioning tools, but its distinctive feature is that ordinary Git commits retain pointer files while large object transfer is handled out of band.

### Sources

- <https://api.github.com/repos/git-lfs/git-lfs>
- <https://git-lfs.com/>
- <https://github.com/git-lfs/git-lfs#readme>
- <https://github.com/git-lfs/git-lfs/blob/main/CHANGELOG.md>
- <https://github.com/git-lfs/git-lfs/blob/main/docs/spec.md>
- <https://github.com/git-lfs/git-lfs/tree/main/docs>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals


## 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: .lfsconfig, .gitattributes, .git/config, ~/.gitconfig, /etc/gitconfig
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** git-lfs
- **Version Scheme:** 0
- **Revision:** 0
- **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-lfs - 3.6.1-1+deb13u1: normalized package name match | Debian stable package indexes: git-lfs from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Git Large File Support | https://git-lfs.github.com/
- Debian apt - golang-github-git-lfs-git-lfs-dev - 3.6.1-1+deb13u1: normalized package name match | Debian stable package indexes: golang-github-git-lfs-git-lfs-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Git Large File Support (library) | https://git-lfs.github.com/
- Nix - git-lfs: normalized package name match | nixpkgs package indexes: pkgs/by-name/gi/git-lfs/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - git-lfs - 3.4.1-1: normalized package name match | Ubuntu 24.04 LTS package indexes: git-lfs from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Git Large File Support | https://git-lfs.github.com/
- Ubuntu apt - golang-github-git-lfs-git-lfs-dev - 3.4.1-1: normalized package name match | Ubuntu 24.04 LTS package indexes: golang-github-git-lfs-git-lfs-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Git Large File Support (library) | https://git-lfs.github.com/
- apk - git-lfs - 3.7.1-r0: normalized package name match | Alpine Linux edge package indexes: git-lfs from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Git extension for versioning large files | https://git-lfs.github.io/
- apk - git-lfs-bash-completion - 3.7.1-r0: normalized package name match | Alpine Linux edge package indexes: git-lfs-bash-completion from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Bash completions for git-lfs | https://git-lfs.github.io/
- apk - git-lfs-doc - 3.7.1-r0: normalized package name match | Alpine Linux edge package indexes: git-lfs-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Git extension for versioning large files (documentation) | https://git-lfs.github.io/
- apk - git-lfs-fish-completion - 3.7.1-r0: normalized package name match | Alpine Linux edge package indexes: git-lfs-fish-completion from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Fish completions for git-lfs | https://git-lfs.github.io/
- apk - git-lfs-zsh-completion - 3.7.1-r0: normalized package name match | Alpine Linux edge package indexes: git-lfs-zsh-completion from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Zsh completions for git-lfs | https://git-lfs.github.io/
- dnf - git-lfs - 3.7.1-4.fc44: normalized package name match | Fedora Rawhide package metadata: git-lfs from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Git extension for versioning large files | https://git-lfs.github.io/
- pacman - git-lfs - 3.7.1-1: normalized package name match | Arch Linux sync databases: git-lfs from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Git extension for versioning large files | https://git-lfs.github.com
- zypper - git-lfs - 3.7.1-1.5: normalized package name match | openSUSE Tumbleweed package metadata: git-lfs from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Git extension for versioning large files | https://github.com/git-lfs/git-lfs
- MacPorts - git-lfs: normalized package name match | MacPorts ports tree: devel/git-lfs/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- Chocolatey - git-lfs: normalized package name match | Chocolatey community package catalog: git-lfs from http://community.chocolatey.org/api/v2/Packages?$filter=IsLatestVersion&$select=Id&$top=1000&$skiptoken='11','gawk'
- Scoop - main/git-lfs: normalized package name match | Scoop official bucket manifest trees: bucket/git-lfs.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.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://www.automicvault.com/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [asciidoctor](https://www.automicvault.com/pkg/brew/asciidoctor/) - Build dependency declared by Homebrew.
- [go](https://www.automicvault.com/pkg/brew/go/) - Build dependency declared by Homebrew.
- [git-xet](https://www.automicvault.com/pkg/brew/git-xet/) - Popular package that depends on this formula.
- [hf](https://www.automicvault.com/pkg/brew/hf/) - Popular package that depends on this formula.
- [git-delete-merged-branches](https://www.automicvault.com/pkg/brew/git-delete-merged-branches/) - Shares av.db curated category or tags: cli, developer-tools, git, git-extensions, version-control.
- [git-delta](https://www.automicvault.com/pkg/brew/git-delta/) - Shares av.db curated category or tags: cli, developer-tools, git, git-extensions, version-control.
- [git-extras](https://www.automicvault.com/pkg/brew/git-extras/) - Shares av.db curated category or tags: cli, developer-tools, git, git-extensions, version-control.
- [git-filter-repo](https://www.automicvault.com/pkg/brew/git-filter-repo/) - Shares av.db curated category or tags: cli, developer-tools, git, git-extensions, version-control.
- [git-flow](https://www.automicvault.com/pkg/brew/git-flow/) - Shares av.db curated category or tags: cli, developer-tools, git, git-extensions, version-control.
- [git-format-staged](https://www.automicvault.com/pkg/brew/git-format-staged/) - Shares av.db curated category or tags: cli, developer-tools, git, git-extensions, version-control.
- [git-fresh](https://www.automicvault.com/pkg/brew/git-fresh/) - Shares av.db curated category or tags: cli, developer-tools, git, git-extensions, version-control.

## Combined YAML source

View the package source record on GitHub. [combined/git-lfs.yml](https://github.com/automic-vault/db/blob/main/combined/git-lfs.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
