This is a followup to <https://git-annex.branchable.com/forum/basic_usage_questions/> – I'm actually testing the "two repos at same URL" situation now, with git-annex 6.20160211 and 6.20160221.

So I have a git-annex repo on two hosts at `rain:~/Attic/Software`, `frost:~/Attic/Software`, and a third clone at `/mnt/portable_HD/Attic/Software`. This means that the repo on the portable HD has two remotes with identical paths, but corresponding to different repositories:

    rain    /home/grawity/Attic/Software
    frost   /home/grawity/Attic/Software

[I was told earlier](/forum/basic_usage_questions) that this configuration would work fine and git-annex would not get confused. However, that doesn't seem to be the case (unless I misunderstood what it considers to be the "right thing"?) I see that whenever I run a command like `git annex info` on the portable\_HD repo, it overrides `remote.{rain,frost}.annex-uuid` with whatever UUID it sees right now – resulting in `git annex info` output such as:

    ┌ frost /run/media/grawity/vol4_grimoire/Attic/Software master
    ┘ git config -l | grep annex-uuid
    remote.origin.annex-uuid=0ebc2083-f95e-4637-bd3e-09db8471daf3
    remote.rain.annex-uuid=3e342a37-6c35-40e5-99a1-1f140e6c363d    <--
    remote.frost.annex-uuid=524b8690-9b3e-48d4-b1a8-c0edb35c1ccf   <--
    remote.fs1.annex-uuid=ed83c81c-1a95-4acb-b76c-b6724fe88873
    
    ┌ frost /run/media/grawity/vol4_grimoire/Attic/Software master
    ┘ git annex info --fast --verbose --debug
    repository mode: indirect
    trusted repositories: [2016-02-29 08:09:29.284136] read: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","show-ref","git-annex"]
    [2016-02-29 08:09:29.286872] process done ExitSuccess
    [2016-02-29 08:09:29.286954] read: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","show-ref","--hash","refs/heads/git-annex"]
    [2016-02-29 08:09:29.289167] process done ExitSuccess
    [2016-02-29 08:09:29.289316] read: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","log","refs/heads/git-annex..fc873fc472a8c5d0db3c91a3868d9adc072f7076","-n1","--pretty=%H"]
    [2016-02-29 08:09:29.291836] process done ExitSuccess
    [2016-02-29 08:09:29.291941] read: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","log","refs/heads/git-annex..23c27db2f2a02515ba39e7d0bb8653fa786b6aea","-n1","--pretty=%H"]
    [2016-02-29 08:09:29.294762] process done ExitSuccess
    [2016-02-29 08:09:29.294869] read: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","log","refs/heads/git-annex..690a90da7fc28be67d5053c0a6c3050cca614eaa","-n1","--pretty=%H"]
    [2016-02-29 08:09:29.301018] process done ExitSuccess
    [2016-02-29 08:09:29.30112] read: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","log","refs/heads/git-annex..94375fb892d1c9f5b70bdd5917c85c5c18a13168","-n1","--pretty=%H"]
    [2016-02-29 08:09:29.3031] process done ExitSuccess
    [2016-02-29 08:09:29.303182] read: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","log","refs/heads/git-annex..4a7f17e644e86776b510606beb6f3cb3819d8256","-n1","--pretty=%H"]
    [2016-02-29 08:09:29.304916] process done ExitSuccess
    [2016-02-29 08:09:29.305455] chat: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","cat-file","--batch"]
    [2016-02-29 08:09:29.308946] read: git ["config","--null","--list"]
    [2016-02-29 08:09:29.312347] process done ExitSuccess
    [2016-02-29 08:09:29.312939] read: git ["config","--null","--list"]
    [2016-02-29 08:09:29.3179] process done ExitSuccess
    [2016-02-29 08:09:29.318494] call: git ["--git-dir=.git","--work-tree=.","--literal-pathspecs","config","remote.rain.annex-uuid","524b8690-9b3e-48d4-b1a8-c0edb35c1ccf"]
    [2016-02-29 08:09:29.320648] process done ExitSuccess
    [2016-02-29 08:09:29.320735] read: git ["config","--null","--list"]
    [2016-02-29 08:09:29.327697] process done ExitSuccess
    0
    semitrusted repositories: 9
    	00000000-0000-0000-0000-000000000001 -- web
     	00000000-0000-0000-0000-000000000002 -- bittorrent
     	0ebc2083-f95e-4637-bd3e-09db8471daf3 -- origin
     	3e14eb23-1b16-4b52-8798-56efb550ab00 -- [vol4_grimoire]:/Attic/Software [here]
     	3e342a37-6c35-40e5-99a1-1f140e6c363d -- grawity@rain:~/Attic/Software              <--
     	524b8690-9b3e-48d4-b1a8-c0edb35c1ccf -- grawity@frost:~/Downloads/Software [rain]  <--
     	b9c0c485-07e5-4166-b5ac-ba971faab98a -- [vol3_tombstone]:/Attic/Software
     	c3c6dd39-ebc7-475a-9992-f99ca01a7f3a -- grawity@wolke:~/Attic/Software
     	ed83c81c-1a95-4acb-b76c-b6724fe88873 -- fs1:/Attic/Software [fs1]
    untrusted repositories: 0
    transfers in progress: none
    available local disk space: 920.96 gigabytes (+1 megabyte reserved)
    
    ┌ frost /run/media/grawity/vol4_grimoire/Attic/Software master
    ┘ git config -l | grep annex-uuid
    remote.origin.annex-uuid=0ebc2083-f95e-4637-bd3e-09db8471daf3
    remote.rain.annex-uuid=524b8690-9b3e-48d4-b1a8-c0edb35c1ccf    <--
    remote.frost.annex-uuid=524b8690-9b3e-48d4-b1a8-c0edb35c1ccf   <--
    remote.fs1.annex-uuid=ed83c81c-1a95-4acb-b76c-b6724fe88873

Notice how the `[rain]` remote tag now shows up next to the wrong remote. Among other things, **this means I cannot use `git annex find --in frost --not --in rain`** and similar commands (unless I specify all the UUIDs by hand). And even though I trust git-annex to not lose any data, this behavior is a bit confusing.

Is it possible that git-annex could detect such situations and avoid updating an UUID if it's _already attached_ to another remote?
