Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for Git LFS #2595

Open
Moulick opened this issue Feb 12, 2024 · 12 comments
Open

Support for Git LFS #2595

Moulick opened this issue Feb 12, 2024 · 12 comments
Labels
enhancement An improvement to an existing feature 🦀gitoxide🦀 `gitoxide` might help here large repos Interacting with large files, big indices, lots of hunks, many refs planned An enhancement that is on the roadmap

Comments

@Moulick
Copy link

Moulick commented Feb 12, 2024

All the files that I have under Git LFS show up as changes

image
@schacon
Copy link
Member

schacon commented Feb 12, 2024

Yeah, it's a good point. We implemented partial support for detecting large files and writing out the LFS format, but we're not reading the setup properly and you can't push to stuff. I can't imagine that GB will work for a repo that needs LFS right now. Sorry about that. It's on our list.

@schacon schacon added enhancement An improvement to an existing feature large repos Interacting with large files, big indices, lots of hunks, many refs labels Feb 12, 2024
@Moulick
Copy link
Author

Moulick commented Feb 12, 2024

Thanks. I might add, This repo is not large at all, barely 150 MB in size. We are just following the best practice to keep binary files out of Git and into Git LFS

@jack-foreflight
Copy link

Are there any known workarounds for this (in combination with large repos) or is it just recommended to wait?

@nvandessel
Copy link

GitButler seems like a very exciting tool, however due to a lot of my work being done in Unity (which necessitates the use of git-lfs) this makes GitButler something I'm unable to use currently.

Unity is also an environment where the use-case for GitButler could be extremely beneficial as it's very easy to make widespread changes, or be working on multiple things at the same time. Would love to see this!

@kjy5
Copy link
Contributor

kjy5 commented Apr 14, 2024

What's the status of this issue? I'm working on a project now that uses LFS and I'm not sure if GitButler is picking things up. Technically, once the files are in .gitattributes there shouldn't be any new CLI commands needed so shouldn't GitButler just work normally?

@Byron Byron added the planned An enhancement that is on the roadmap label Apr 21, 2024
@dlavoieb
Copy link

How can one add git-lfs to the path of GitButler?
Screenshot 2024-06-25 at 09 57 52

My $HOME/.gitconfig specifies an absolute path to the executable, does GB not parse the config file?
image

@Byron
Copy link
Collaborator

Byron commented Jun 26, 2024

Would you mind opening a new issue for this? This one is about adding git-lfs support, whereas the problem here seems to be a push failing as git-lfs (the binary) can't be launched by Git itself.

In theory, that issue should reproduce even when pushing anything there without GitButler, with git on the command-line.

@davestimpert
Copy link

Just to clarify, if I'm using git-lfs, I shouldn't use gitbutler? Or are there work-arounds by doing certain commands on the cli?

@Byron Byron added the 🦀gitoxide🦀 `gitoxide` might help here label Aug 16, 2024
@Byron
Copy link
Collaborator

Byron commented Aug 16, 2024

Currently, GitButler will not work if filters are used, and from what I can tell no workaround is possible. When gitoxide performs these operations, filters will be fully supported though.

@nickdonnelly
Copy link

Just to clarify, if I'm using git-lfs, I shouldn't use gitbutler? Or are there work-arounds by doing certain commands on the cli?

@davestimpert currently you can get around not being able to push by explicitly adding the binary to your PATH on the command line and launching GB from there. On a MacOS machine:

> export PATH=$PATH:/opt/homebrew/bin # <-- This is where my `git-lfs` binary is
> open /Applications/GitButler.app/

@ukarlsson
Copy link

Is the best fix currently to delete the hook?

rm .git/hooks/pre-push

@Byron
Copy link
Collaborator

Byron commented Sep 20, 2024

If push related hooks are the problem and these are executed by GitButler, in the project settings of GitButler there is a way to turn hooks off.

Screenshot 2024-09-20 at 12 20 02

That might be a less permanent fix as it doesn't involve deleting the whole hook permanently, or prevent it from running when pushing with Git directly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement An improvement to an existing feature 🦀gitoxide🦀 `gitoxide` might help here large repos Interacting with large files, big indices, lots of hunks, many refs planned An enhancement that is on the roadmap
Projects
None yet
Development

No branches or pull requests

10 participants