On Thu, Dec 05, 2013 at 02:21:09PM +0100, Michael Haggerty wrote: > A better alternative would be to ask users to clone from the central > server. In this case, the central server would want to tell the clients > to grab what they can from their local bootstrap mirror and then come > back to the central server for any remainders. The trick is that which > bootstrap mirror is "local" would vary from client to client. > > I suppose that this could be implemented using what you have discussed > by having the central server direct the client to a URL that resolves > differently for different clients, CDN-like. Alternatively, the central > Git server could itself look where a request is coming from and use some > intelligence to redirect the client to the closest bootstrap mirror from > its own list. Or the server could pass the client a list of known > mirrors, and the client could try to determine which one is closest (and > reachable!). Exactly. I think this will mostly happen via CDN, but I had also envisioned that the server could add metadata to a list of possible mirrors, like: [mirror "ko-us"] url = http://git.us.kernel.org/... zone = us [mirror "ko-cn"] url = http://git.cn.kernel.org/... zone = cn If the "zone" keys follow a micro-format convention, then the client knows that it prefers "cn" over "us" (either on the command line, or a local config option in ~/.gitconfig). The biggest problem with all of this is that the server has to know about the mirrors. If you want to set up an in-house mirror for something hosted on GitHub, but its only available to people in your company, then GitHub would not want to advertise it. You need some way to tell your clients about the mirror (and that is the inverse-mirror "fetch from the mirror, which tells you it is just a bootstrap and to now switch to the real repo" scheme that I think you were describing earlier). -Peff -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html