Previously, it would always report all files as new files, although some of them may not have changed. I've added testcases for the repo functions.