Ensure Geo selective sync consistently handles both git pull and push to unselected projects

Verify whether there is inconsistent behavior

  1. Setup Geo with selective sync
  2. git fetch an unselected project from a secondary (fails?)
  3. git push to an unselected project on a secondary (succeeds because it proxies to primary?)

Resolve inconsistency

The first fix that comes to mind is checking selected projects on the secondary before proxying pushes. But that sounds inefficient, and is it unnecessary? How did the user get into this situation anyway? Did they clone from the primary and then add the secondary remote later? If so, why not proxy pushes to the primary?

Maybe the real fix is to proxy fetches to the primary when the project doesn't exist on the secondary?

cc @ashmckenzie

Edited Mar 27, 2019 by Michael Kozono
Assignee Loading
Time tracking Loading