Thread (3 messages) flat view 3 messages, 2 authors, 2017-07-12

Mirroring for offline use - best practices?

From: Joachim Durchholz <hidden>
Date: 2017-07-12 10:54:31

Hi all,

I'm pretty sure this is a FAQ, but articles I found on the Internet were 
either mere "recipes" (i.e. tell you how, but don't explain why), or 
bogged down in so many details that I was never sure how to proceed from 
there.


Basic situation:

There's a master repository (Github or corporate or whatever), and I 
want to set up a local mirror so that I can create clones without having 
to access the original upstream.
I'd like to set the mirror up so that creating a clone from it will 
automatically set up things to "just work": I.e. branches will track the 
mirror, not upstream, possibly other settings that I'm not aware of.

I gather that local clones are fast because hardlinked - is that correct?
Is that correct on Windows? (I can't easily avoid Windows.)


Ramification 1:

I'm not sure how best to prepare patches for push-to-upstream.
Is there value in collecting them locally into a push-to-upstream repo, 
or is it better to just push from each local clone individually?


Ramification 2:

Some of the repos I work with use submodules. Sometimes they use 
submodules that I'm not aware of. Or a submodule was used historically, 
and git bisect breaks/misbehaves because it can't get the submodule in 
offline mode.
Is there a way to get these, without writing a script that recurses 
through all versions of .gitmodules?
I'm seeing the --recurse-submodules option for git fetch, so this might 
(or might not) be the Right Thing.


Any thoughts welcome, thanks!

Regards,
Jo
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help