-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Description
it's time to settle this topic once and for all, because answers raised in previous issues about this have proven insufficiently formulated, or are simply outdated with deprecated commands (#316, #641, #910)
i was delighted when git lfs was so easy to install and get started with — but it starts to feel frustrating when git lfs is difficult and confusing to break up with — and boy am i confused
so let's make this easy together — and remember — its not you, it's me
ok ok.. i'm seeing someone else.. it's github pages! (github pages doesn't support lfs)
-
git lfs uninstall
this removes hooks and smudge/clean filter configuration
and this is only the beginning, mua-ha-ha -
how can we reindex/re-commit lfs'd files to restore them???
in this comment @andyneff says:you can probably remove the entries from .gitattributes and trigger the git index that every lfs file is different, and then add and commit those files. This is the same procedure in how you change the auto newlines in a git repo. I'll have to test this some, but this might get you in the right direction. The only caviate is you don't want to reset the .gitattributes files first.
good thing i read just now that this must be done before the .gitattributes step
but how the heck do we do this? (sure don't want to accidentally change all my newlines, hah)
is there a way that git lfs can do this for me? after all, it was the one who created this mess to begin with.. ok, ok, i know that line never works in any relationship ;)
edit: ok, there's some talk in this issue about a methodology
git lfs ls-files— view lfs files- for each file, use globs if you can:
git rm --cached myfile.psd— "remove" the lfs filegit add myfile.psd— add the "normal" file
git commit -m "restore files from lfs"
let me know if that makes sense
-
remove lfs
.gitattributeentries
this will apparently prevent lfs from resurrecting itself -
how do we remove remaining files, seen viagit lfs ls-files???
i'm guessing wegit lfs untrackthem one-at-a-time
edit: nope, untrack doesn't remove them... hmm... what does it do?
maybe once i figure out step 2, this'll be done
edit: yep, step 2 knocks this one out -
what do we tell our fellow contributors to do???
i'm guessing they just need togit lfs uninstall?
do they also need togit lfs untrackstored files or anything like that?
also, i have no interest in rewriting git history here, that's silly... i just want to move forward with my collaborators once this is taken care of
oh, and obviously, i need some help with the points ending in lots of question marks — once we work through this, i'd like to edit this post into a nice clean list of steps that people can follow — then maybe let's formalize this into some documentation
thanks fellas