Hey Joey, thanks for this awesome software! I am starting to use it for some personal git repos with images/PDFs/etc.
I was wondering if you have considered a feature similar to Git LFS's file locking feature (https://github.com/git-lfs/git-lfs/wiki/File-Locking).
Not sure if it's easy or possible with the way that git-annex does things, but I can imagine it would be useful to know if someone is actively working on a binary file so that 2 different people don't change the same binary file at once. I think it's important to know because it's often difficult or impossible to merge binary files. And on multi-person projects, this becomes more important.
I think the interface described in the LFS wiki link above is pretty nice:
$ git lfs locks
images/bar.jpg jane ID:123
images/foo.jpg alice ID:456
Here we can see who has locked each individual file.
git-lfs is a centralized system with a server that can manage the locks. git-annex is generally not, and so I do not think it's possible to implement locks of that kind generally, for the same reason git does not support file locking itself, while contralized VCS systems often do.
However, if you wanted something like git-lfs's behavior of preventing pushes that modify files locked by another user, it could be implemented as a pre-receive hook on a centralized git server. You would only need some way to register the locks to the server, for the pre-receive hook to check.