GIT LFS: Get the complete list from the whole repository

If you have access to the git LFS server, you can look in the lfs/objects folder. Is should contain a folder structure that works like a search tree for the stored objects. At some level (maybe third?) are the objects themselves.

A small example with a tiny project I just converted to git (and git lfs) to test this looks like this:

$ ls lfs/objects/*/*
lfs/objects/9f/ef:
9fef0fcd855a78effd175cdf5a49a14b57334b40f1ad0c75317d6cbc0bb29595

lfs/objects/a5/f2:
a5f207bf721d3cbf62d298b6e2c9fa7cbdb3e37c7f44590a6c8be76560d7b9d7

lfs/objects/ca/63:
ca631009296d9de54dde2f70fec997aa0b22f624ed8f6fecc763c684317ba825

In my case this is inside the .git folder. I haven't pushed it to a git LFS server, but I presume the structure is the same on there. This should (as far as I can tell) give you all the hashes (as the file names) of all the files stored in git LFS.

Note: I'm basing this on experimenting with git LFS and noting what happens. Not from any deeper understanding on how the storage system behind git LFS works.


You can do this in Git LFS v2.4.0 and later using the --all flag

git lfs ls-files --all

You can read more about it in this pull request.

Tags:

Git

Git Lfs