Git LFS: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
(Created page with "=Internal= * Git =Overview= Git LFS is a system for managing and versioning large files in association with a Git repository. Instead of storing the large files within...")
 
No edit summary
Line 1: Line 1:
=External=
* https://help.github.com/en/articles/collaboration-with-git-large-file-storage
=Internal=
=Internal=



Revision as of 00:40, 19 July 2019

External

Internal

Overview

Git LFS is a system for managing and versioning large files in association with a Git repository. Instead of storing the large files within the Git repository as blobs, Git LFS stores special "pointer files" in the repository, while storing the actual file contents on a Git LFS server. The contents of the large file are downloaded automatically when needed, for example when a Git branch containing the large file is checked out.

Git LFS works by using a "smudge" filter to look up the large file contents based on the pointer file, and a "clean" filter to create a new version of the pointer file when the large file's contents change. It also uses a pre-push hook to upload the large file contents to the Git LFS server whenever a commit containing a new large file version is about to be pushed to the corresponding Git server.