views:

44

answers:

2

Hello everyone,

Suppose we have a Project with three applications — A, B and C. Our team: Jack, Susan and Martin. And one project leader — David.

Each programmer is working on their own application:

A - Jack

B - Susan

C - Martin

So, there is a problem with source code management. How to effectively organize it with Git? I have several use-cases, but I'm not really sure if they are correct and effective. Here they are:

  1. One repo for whole project.
  2. Separate repositories for A, B and C apps (within their appropriate directories in "apps" folder).

I really like second idea, but I'm not if it's really effective.

What do you thing and how would you organize such things? Any help will be appreciated.

+1  A: 

This all comes down to how tightly coupled those applications are. If they have dependencies amongst them (A calls private, still-changing APIs of B and C), then putting them in one repository would make sense. If they are developed independently, then they should be in separate repositories.

Novelocrat
Thanks @Novelocrat. The highest dependency would be if i.e. A shows some of the symfony components from B or C...
Darmen
A: 

Got it. The answer is — Git Submodules.

Darmen