DEV Community

James Lau
James Lau

Posted on

What and Why, Git LFS?

ORIGIN

For a very long time now, I have been dabbling with various platforms for blogging and came to the conclusion recently that I should just stick with WordPress due to my comfort level in use and the understandings of its inner workings. But there’s been a scratch in my brain ever since I had a commenter mention about my explanations on the web, and that it doesn’t show any imagery of my thoughts. This does bring me back to some of the ease of use when I use to post via Netlify. It was easier to write in a text file and then push my article through the terminal, or with VSCode’s built in terminal. Course then I have to figure out the front-end user interface component which I had used Gatsby at the time.

So now I am once again asking myself, do I need to search for images to represent my thoughts? Do I listen to my audience? What’s the technical debt that will incur on my end-users if I serve them images, gifs, and videos? I ended up looking for answers. Blogging techniques, blogging inspirations, blogging methods. Oh by the way, seems like it has “go the way of the dodo” that tech bloggers now are labeling “blog” as “journal.” Therapy has come full circle here. But I digress, back to skulking.

RESEARCH

While sleuthing around, I came across an old podcast episode from ShopTalk Show about blogging and later tips on utilizing Git LFS as an option to sync and managed timestamp changes to large image files, videos, audio, and design files such as Photoshop files. According to the official Git LFS documentation, you can continue to commit changes as usual on your end and what Git LFS does it creates little pointer files that keeps track of all the large incoming and outgoing assets that you may have within your project. This means the files you are working on are never stored on GitHub.

As an example, ShopTalk Show’s guest Jim Neilson mentions, he first commits his changes and is pushed and managed by Netlify. The compressed pointer files are then sync up to his Dropbox account which is where his true assets are offloaded. Doing this way saves time on the client side when you need to handle and monitor large changes. Netlify compiles a commit change, generates URL link that points to the hosted location of the asset(s) and then builds the site.

BENEFICIAL APPLICATIONS

Although WordPress.org does not have a file limitation to how much you can store assets with the Media Library, you are certainly limited to the size of the file that you can upload. Usually it is noted at the bottom drag and drop window. However, you can override this setting within your function.php file or go into “Settings” and then adjust the “Max upload file size” input field.

With the way things are built these days, seems like a lot of companies out there are experimenting with “headless cms” as an alternative option. Preventing the traffic jam for marketing and content creator folks while still adjusting the sites front-end user interface. This is where the Git LFS option comes in handy.

Perhaps this is worth checking out and utilizing when I have the time to attempt another JAMstack project. Possibly Eleventy?

This was initially published on my site at jameslau.com (https://jameslau.com/what-and-why-git-lfs/). Please come by and check out more of my writing and other works!

Thanks for reading!

CITING SOURCES:
ShopTalk Show podcast link: https://shoptalkshow.com/504/#t=38:52
Github LFS tutorial: https://github.com/git-lfs/git-lfs/wiki/Tutorial
GitKraken YouTube tutorial on Git LFS: https://www.youtube.com/watch?v=jXsvFfksvd0
Atlassian Git LFS explanation: https://www.atlassian.com/git/tutorials/git-lfs
Git LFS homepage: https://git-lfs.com/

Top comments (0)