I have a project where I stored video files with Git LFS. Now I ran into some complications with my build server that doesn't yet support Git LFS. As it's an external service, I can't really affect the build process, and thus would want to move the files from under Git LFS back to "regular" Git. I managed to untrack the file types with git lfs untrack '<file-type>'
but git lfs ls-files
still gives a list of the files previously added.
I imagine I could remove the files, push the changes and then manually re-add them, but is this really the recommended way of doing things?
I have just recently run into this problem where assets were accidentally added to git-lfs on one branch that shouldn't have been. My solution was:
git lfs untrack '<file-type>'
git rm --cached '<file-type>'
git add '<file-type>'
git commit -m "restore '<file-type>' to git from lfs"
The result is a rewrite of the git-lfs oid sha256 pointers with the standard file contents.
(Edit 2019-03): The accepted answer was changed to provide an easy solution for simpler cases. See also the edits in the answer by VonC for alternate solutions in case you have a more complex case on hand.