I've used git in a distributed enviornment (including GitHub) in which developers work offline then push to the central repo. I now have a requirement for a more structured repository hierarchy because we have multiple offices. If we take an example we have developers based in Tallinn who will push to their remote repository. We also have developers in London who will push to their repository. We then need to merge the changes between the two remote repositories and pass them back to the developers in both sites. The hierarchy therefore looks something like this:
Tallinn ------- London | | ------------- ------------- | | | | | | | | Dev Dev Dev Dev Dev Dev Dev Dev
Can someone recommend the best approach to implement this?