"At the moment meta files are stored like so:
On many occasions in client projects this has led to nonsense commits such as "Just re-committing a Unity generated meta file." for empty folders since git does not track empty folders."
The most common problem with that is that case:
Someone deletes directory with all the files and make a push.
Another one pulls and got an empty directory. Unity will create a meta for empty directory. Suppose, we have 10 people on the project - they will all have different metas generated. There will be a conflict if someone commits this file.
I'm facing that problem in 3 companies, I worked for recent 3 years, unity devs, please, pay attention to my straightforward suggestion to solve it.
There is a complex solutions to that, for example git hook: https://stackoverflow.com/a/19157675
I have a simple and straightforward suggestion: do not create meta for empty directories automatically. Create them only when there is any file inside. I see no reason to have meta for empty directory. There will be no problem, if meta will be generated only at the time any file is added.