I have the following vicfg,
group UUID1 = PodA
group UUID2 = PodA
group UUID3 = PodA
group UUID4 = PodB
wanted UUID1 = groupwanted
wanted UUID2 = groupwanted
wanted UUID3 = groupwanted
wanted UUID4 = groupwanted
groupwanted PodA = present and not copies=PodA:1
groupwanted PodB = present and not copies=PodB:1
at this point repos 1 2 3 combined has 1 copy of each file and repo 4 has full copy of all files. (used to move files around manually before grouping repos).
What I am trying to achieve is to have a copy of a file in one of the 3 repos (1 2 3) and one copy in 4. running git annex get --auto starts getting all files, files with copies on other disks. testing using git annex find --want-get --not --in . returns all remaining files not in the repo but has enough copies on other repos both PodA and PodB has copies. numofcopies is set to 2.
Um, I'm pretty sure git-annex respects your preferred content settings. Whether the settings do what you think they do is another matter.
When I tried replicating the same settings you show, "git annex get --auto" didn't want to get any files. That makes perfect sense, since "present" only succeeds if the file is already in the repo, so for files that are not, it fails, and so "present AND foo" fails, and so the file is not wanted.
Lose the "present". All you need to make the files land on only 1 of the PodA repos is "not copies=PodA:1"
Are these repositories all in sync, so that git-annex in repo 1 knows that repo 2 and repo 4 have already gotten the file?