Gitlab hero border pattern left svg Gitlab hero border pattern right svg

Category Direction - Git LFS


Git LFS (Large File Storage) is a Git extension, which reduces the impact of large files in your repository by downloading the relevant versions of them lazily. Specifically, large files are downloaded during the checkout process rather than during cloning or fetching..

This page is maintained by the Product Manager for Package, Tim Rizzi (E-mail), however the prioritization, design and implementation of features and bugs is owned by the Create:Source Code Group.

Use cases

  1. Version large files—even those as large as a couple GB in size—with Git.
  2. Automatically detect LFS-tracked files and clone them via HTTP
  3. Download less data. This means faster cloning and fetching from repositories that deal with large files.
  4. Host more in your Git repositories. External file storage makes it easy to keep your repository at a manageable size.

What's next & why

Up next is gitlab-#219957 which will clarify in the documentation how file locking works with LFS.

Maturity Plan

This category is currently at the "Minimal" maturity level, and our next maturity target is "Viable" (see our definitions of maturity levels).

For a list of key deliverables and expected outcomes, check out the epic, Make Git LFS Loveable, which includes links and expected timing for each issue.

Competitive landscape

Top user issue(s)

The top user issue is gitlab-#15079, which aims to resolve a problem in which the Gitlab archiver doesn't honor Git-LFS references in a repository when it's streaming an archive to a user.

Top internal customer issue(s)

There are no internal issues at the moment.

Top Vision Item(s)

The top vision item is gitlab-#14114, which will add the ability to set limits and quotas for Git LFS.

Git is a trademark of Software Freedom Conservancy and our use of 'GitLab' is under license