Meta files: What is the "fileFormatVersion"?

What is its purpose and, above all, why does it change out of the blue?

It’s breaking our git when changing from mac to pc (or vice-versa), but that might be beyond this question’s point. When fetching from either end, it goes from 1 to 2 - and only in some apparently random meta files, not all of them get changed. Like this:

- fileFormatVersion: 1
+ fileFormatVersion: 2
guid: cfbadcfd53f62afc5623fbadafbc3ab56

I have a hypothesis that fileFormatVersion governs to the line endings that Unity expects in a script file. (See newline - Difference between CR LF, LF and CR line break types - Stack Overflow for more info on CRLF versus LF).

I have not verified this with experimentation, but I am guessing that fileFormatVersion: 1 indicates Windows files (using CRLF) and fileFormatVersion: 2 indicates Mac files (using just LF).