Git extension for versioning large files
Git Large File Storage (Git LFS) is a command line extension and specification for managing large files with Git repositories. Instead of storing large files directly in Git, LFS replaces them with text pointers while storing the actual file contents on a remote server. This approach keeps Git repositories fast and lightweight while still allowing version control of large assets like images, videos, datasets, and other binary files.
The tool is written in Go and provides pre-compiled binaries for Mac, Windows, Linux, and FreeBSD. Git LFS integrates seamlessly with existing Git workflows - you simply specify which file patterns to track with LFS using commands like 'git lfs track "*.psd"', and then use normal Git commands to add, commit, and push files. The tool automatically handles uploading large files to LFS storage and downloading them when needed.
Git LFS is ideal for developers and teams working with repositories that contain large binary assets, such as game developers managing art assets, data scientists working with large datasets, or any project that needs to version control files that would otherwise make Git repositories unwieldy. It works with Git versions as early as 2.0.0, though recent versions are recommended for best performance.
# via Homebrew
brew install git-lfs
# via Binary download
Download from https://github.com/git-lfs/git-lfs/releases and run ./install.sh