2017-10-16 7 views
1

J'ai un projet que j'aimerais stocker sur GitHub.Plusieurs branches orphelines ou dépôts séparés - git

Ce projet contient du code à exécuter sur un Arduino, Android, iOS ainsi que le code du serveur. Chaque section du code interagit avec l'autre, cependant, le développement de chaque section est plus ou moins indépendant.

Devrais-je avoir toutes les sections de code dans un référentiel sous différentes branches orphelines, ou devrais-je avoir un référentiel séparé pour chaque section? Pourquoi? Quels seraient les avantages et les inconvénients de chaque méthode?

Merci beaucoup!

Répondre

1

Répondez à votre question avec la question suivante. Donc le fractionnement du backend, des microservices et de l'application UI, de l'application android, de l'application ios (même si ce sont des parties différentes) n'est pas très judicieux, si vous répondez oui aux questions ci-dessous.

  1. Les parties multiples sont-elles développées par la même équipe?
  2. Avoir le même cycle de version?
  3. Chaque projet est-il partiellement dépendant de l'autre pour être libéré ou inversé?

Optez pour plusieurs référentiels lorsque vous dites oui à ce qui suit?

  1. Un référentiel unique serait trop grand pour être efficace.

  2. Vos référentiels sont faiblement couplés ou découplés.

  3. Un développeur n'a généralement besoin que d'un ou d'un petit sous-ensemble de vos référentiels à développer.

  4. Différentes équipes travaillent sur différents référentiels.

Il ya beaucoup plus de questions à se poser encore. Il n'y a pas de modèle prédéfini pour les cas individuels.

+0

Merci cela aide beaucoup – SUPERETDUPER

3

Si les branches sont totalement et "éternellement" indépendantes, utilisez des référentiels indépendants.

Il n'y a absolument aucun avantage à les mélanger dans un référentiel unique qui va grossir au-delà de toute «branche» unique.

Dépôt plus petit - moins de temps de clonage, moins de contraintes bientôt, moins de frais généraux.

+0

Merci pour votre réponse. Ils ne sont pas totalement indépendants puisque l'Arduino communiquera avec les téléphones et les téléphones avec le serveur. En prenant cela en compte, y aurait-il des avantages à utiliser des succursales? – SUPERETDUPER

+0

@SUPERETDUPER - Personnellement, je considère toujours cela comme indépendant du point de vue du référentiel. Les branches n'auront aucun point de fusion. – Amit

+0

Ok merci! Je vais attendre quelques jours pour voir s'il y a d'autres réponses. Sinon, je vais marquer le vôtre comme correct. – SUPERETDUPER