Using Git LFS to Manage Large File Storage - Blogs
X
16Nov

Using Git LFS to Manage Large File Storage

Git LFS (Huge File Storage) is an open-source Git extension that was created by Atlassian, GitHub, and few other open-source contributors. It minimizes the impact of large files in your repository by downloading the necessary copies of them slowly. 

Small file storage was the original purpose of Git. Uploading some huge files is necessary in some circumstances, though. Git Large File Storage (Git-LFS) was developed in order to speed up and reliably store large files on Git. Git LFS can be used to version huge files that are larger than the GitHub limit (100mb), typically valuable output data. Both plain text and binary files can be present. 

The setup of Git-LFS and the integration of Git LFS into your existing workflow, regardless of whether you utilize- 

  1. GitHub’s web interface 

  1. Command line 

  1. GitHub Desktop application 

Setting up Git for Large File Storage 

Step-1: Open Git Bash Download the Git LFS, before that first you need to install Git and then install the Git-LFS. 

   

Step-2: After you download and install Git LFS, you can start managing large files in a Git repository by running git lfs track , where is a command-line glob specifying a particular file, extension, directory, or any combination. Git LFS writes these globs to a .gitattributes file in your repository that Git uses to pre-process files as they move back and forth from your working directory to your index and commit history. 

 

Step-3: Once you tell Git LFS which files and paths to manage, you can stage, commit, and push just like you normally would; Git LFS handles all the details for you. When you run git push, you’ll notice a progress indicator showing the transfer status of each file as Git LFS uploads it to the LFS server. 

 

Step-4: If you ever need to find out which paths Git LFS is managing, you can run git lfs track with no arguments. You’ll get an output of all the tracking rules from the globs listed in the .gitattributes file. For a deeper view of which specific files these globs are catching, you can run git lfs ls-files to see a listing of all the files in your project that Git LFS is managing. 

 

How to clone a repository with large file storage  

  • Make sure Git-LFS is set up before downloading the Git repository that contains huge files. 

  • The repository you cloned would otherwise only have the shortcuts to the huge files. It won't help to install Git-LFS after the repository has been cloned. Git pull and git fetch won't take care of replacing your huge file shortcuts for you automatically. 

  • Simply delete the repository if you've previously cloned it, check that Git-LFS is properly installed, then clone once more. 

  • The huge files will be correctly copied in this manner. 

Benefits of using Git-LFS 

  • Users can conserve space by storing binary files in a different location by using the Git LFS extension. 

  • Per Git Large File Storage-enabled GitHub account gets 1 GB of free storage and 1 GB of free bandwidth each month. 

Reference Links: 

Related

Authorize access to VSTS REST APIs with OAuth 2.0

Visual Studio Team Services uses the OAuth 2.0 protocol to authorize your app for a user and generat...

Read More >

.Net Framework to .NET (.Net Core) Migration

In this article, we will discuss about the things we should consider when migrating code from .NET F...

Read More >

Part 2 of KnockOut.js in Asp.Net

Computed Observables:             &...

Read More >

TFS to VSTS Migrations

The next evolution of TFSWhether you’re a startup or Enterprise or you’re a team of just...

Read More >

Migrating Work Item from Azure DevOps to GitHub Issues

Overview: This blog will let you know migrating work items from Azure DevOps to GitHub. Work Item ar...

Read More >

Pivoting and Unpivoting Data In SQL Server 2008

In this blog, I would like to explain about PIVOT and UNPIVOT operator in SQL Server. The PIVOT oper...

Read More >

what's new features are coming in Bootstrap4

What is Bootstrap?Bootstrap is a collection of tools for creating responsive websites...

Read More >

VSTS RollUp

VSTS RollUp is a web service which provides summed values of select fields for all child work items ...

Read More >

Threading

Multi-taskingIt is a concept of performing multiple tasks over a certain period of time by executing...

Read More >

Share

Try DevOpSmartBoard Ultimate complete Azure DevOps End-to end reporting tool

Sign Up

  • Recent
  • Popular
  • Tag
Monthly Archive
Subscribe
Name

Text/HTML
Contact Us
  • *
  • *