Where the HDD approach usually falls apart is merge conflicts. And by that I don’t mean only in the git world. This is an inherently difficult problem.
Someone extracts a subset of the hdd collection onto their laptop to do some editing. Then forget to store back the result on the hdd for the next 6 months. Next time when doing backup, mix up the hard drives, only saving the photos on the second one. And so on. Even basic stuff like deduplicating photos or filtering out only the good photos can leave a lot of confusion. Quick resolutions like “just keep everything” completely reverts such a cleanup (1). A strict master-slave scheme helps but requires access to the master hdd for any writes.
Cloud doesn’t solve this entirely but shortens the window of conflicts by convenient and always in sync access to both read and write.
Someone really need to invent a git for photos, for humans. That can deal with the longer partitions which loose hard drives usually lead to.
(1) on the topic of cleaning up photos. Doing this before backing up is strongly recommended. The smaller your data the easier it is to manage. You also will enjoy your old photos a lot more. Nobody wants to click through the 100 angles you shot of some food from a local cafe 5 years ago. Keep only what is truly relevant.