This function name implies it is read-only, but it actually writes to the object store. That's a bit surprising, and might have unintended consequences in some cases (i.e. make 'status' in a git working tree with a CD ISO in it will make your repo a couple hundred magabytes larger).