Cómo save en caching los repositorys github para que el segundo clon git use el caching en lugar del repository github

senario:

1) estamos en China, por lo que acceder a github es lento y, a veces imposible, y como sabes, no podemos vivir sin Github.

2) cuando desarrollamos proyectos iOS, usamos Cocoapods, y usa muchos repositorys github, por lo que cuando instales pods, muchos commands como git clone [email protected]/reactivecocoa/ReactiveCocoa serán activados.

Entonces, ¿hay alguna manera de mejorar este process? la mejor solución para mí parece hacer un caching local de estos repositorys github, cuando se activa git clone [email protected]/reactivecocoa/ReactiveCocoa está activando git clone http://192.168.1.199/repos/reactivecocoa/ReactiveCocoa , y el el server puede decir si existe cierto pod, si es que devuelve el caching, de lo contrario, realice una request de github y guarde en caching el resultado.

pero no puede encontrar una estrategia factible para lograr esto, ¿alguna sugerencia?

 git config --global url."[email protected]:reactivecocoa/ReactiveCocoa".insteadOf "http://192.168.1.199/repos/reactivecocoa/ReactiveCocoa"