My experience: a small-ish size php application made originally by 2 autodidacts who didn't dig too far into programming and the tooling around programming (weirdly enough, I found some pretty advanced SQL in there, while it seems it didn't bother them to write the exact same request 7 times 5 lines apart from each other).
There were/are files scattered all accross the filesystem with wild include statements both at the top of each scripts and in the execution logic. The scattering was/is so bad with mixed data files with logic files, dependencies (which were not registered as such, and were modified from their original source) thrown between original scripts.
I've started versioning a year ago when I got there, and I only got to _good_ state last month, trimming and trimming.
Just the fact that files were scattered accross the filesystem, while not constituing big enough clusters to warrant separate repositories, meant I had to make one large repo with weird ignore rules.
There were/are files scattered all accross the filesystem with wild include statements both at the top of each scripts and in the execution logic. The scattering was/is so bad with mixed data files with logic files, dependencies (which were not registered as such, and were modified from their original source) thrown between original scripts.
I've started versioning a year ago when I got there, and I only got to _good_ state last month, trimming and trimming.
Just the fact that files were scattered accross the filesystem, while not constituing big enough clusters to warrant separate repositories, meant I had to make one large repo with weird ignore rules.