# [[Git LFS]] _Created: 2026-04-01_ | #git | [[Git]] Git LFS needs support on both sides: the local machine needs the `git-lfs` client, and the remote Git host needs Git LFS server support. GitHub, GitLab, and many other hosted Git services support it, but a plain Git remote does not automatically provide LFS object storage. ## How Git LFS Helps Git LFS is useful when a repository needs to track large binary files such as images, videos, archives, datasets, or generated assets. Instead of storing the full binary content in normal Git history, Git stores lightweight pointer files and Git LFS stores the large objects separately, which keeps clones and history operations more manageable. ## Why Install `git-lfs` Separately Git LFS is not built into the core Git client. Git only knows how to store and transfer the pointer files that appear in the repository; the separate `git-lfs` package provides the `git lfs` commands, Git filter configuration, and hooks that turn those pointers into real large-file uploads and downloads. Without installing it, a repository that uses LFS may clone successfully, but large tracked files can remain as small pointer text files instead of the actual file contents. ## Installation ```shell-session $ brew install git-lfs ... ==> Pouring git-lfs--3.7.1.arm64_tahoe.bottle.tar.gz ==> Caveats Update your git config to finish installation: # Update global git config $ git lfs install # Update system git config $ git lfs install --system ==> Summary 🍺 /opt/homebrew/Cellar/git-lfs/3.7.1: 82 files, 14MB $ git lfs version git-lfs/3.7.1 (GitHub; darwin arm64; go 1.25.3) ```