Large Media not working with GitHub Desktop

I started using Netlify CLI and Large Media support.

When I commit my code changes to GitHub via GitHub Desktop, it gets stuck and just spins when I do a push.

I noticed that I’m able to push to GitHub via VSCode, however.

This issue started happening immediately after I started using Large Media support.

What might cause GitHub Desktop to stop working, but allow VSCode to still work?

Hi, @simplerethink. To answer, it may help to go over some details about what Large Media is and how it functions.

For any Git hosts we support, the default is for the Git host to provide both Git hosting and the Git LFS service. The access control for both types of Git repo actions - the default Git service and the Git LFS service both - are controlled by the Git host.

When you use Large Media, you are keeping the Git repo at the Git host but moving the Git LFS service to Netlify. Large Media is a Git LFS service that also enables browse time image transformations. Moving the Git LFS service to Netlify means that the access control for theGit LFS endpoint also moves to Netlify. You now need additional credentials at Netlify to push commits to the origin.

This is Netlify specific access control is provided by the “Git credential helper” which is installed and configured by the Netlify CLI tool when Large Media is enabled for a site. This Git credential helper is configured for the local Git CLI tool.

So, this brings us back to the questions of: “Why does VSCode work and GitHub Desktop app does not?”

My best guess (as I haven’t researched the internals to be sure) is that VSCode is using the Git CLI tool for Git access and the GitHub Desktop app is using its own code for Git access. So, VSCode works because the Git CLI tool works. GitHub Desktop does not work because it is not being configured to use the Git CLI tool’s credential helper.

I do want to make an important note here:

  • It may not be possible to configure the GitHub Desktop app to use Large Media.

I don’t know that tool well at all and I don’t know if it was designed to be able use a third-party Git LFS service like Large Media. If those settings are not able to be changed (and they may not be), then there would be no way to configure the GitHub Desktop app to use Large Media.

Note, GitHub Desktop does support Git LFS when the service is at GitHub. It is just third-party Git LFS services that I cannot find documentation for.

If there are other questions about this, please let us know.

1 Like

@luke Thank you. Your explanation was helpful and is in line with what I’m finding.

I’ve been using GitHub Desktop with LFS without issue, but switching to third-party LFS is where the problem is, so I agree it seems to not be supported (or at least I haven’t found a way to add support).