-
organisation avec Git
Bonjour,
J'aurais voulu avoir quelque conseil sur l'utilisation de Git du point de vue de l'organisation de travail.
J'ai installer Git pour la première sur un serveur de développement identique à celui de production , j'ai créer un repository et ajouter des fichiers de travail à l'intérieur.
Cela fonctionne car je suis capable depuis un poste client sous windows avec TortoiseGit de cloner mon repository puis de modifier un fichier et d'utiliser les commandes commit/pull/push etc ...
Ce que je ne comprends pas bien c'est comment ensuite chaque développeur travail, est-ce que chaque développeur doit avoir la totalité du code sur son poste en local et donc travailler en local ?
Si oui, lorsqu'il a terminé ses modifications il les push et moi en tant que responsable du projet je pull les modifications sur le serveur de développement, je test les modifications, puis je synchronise avec le serveur de production.
Est-ce la bonne manière de procéder ?
Si non merci de m'indiquer une meilleur organisation.
Cordialement,
-
Concernant ta question sur le workflow:
Un serveur de prod et un serveur de travail: pourquoi pas... mais, est-ce nécessaire :?
Je t'invite à regarder ce workflow: sur la master tu retrouves tes versions déployables; ensuite, tu retrouves des branches de développement/intégration, ou de maintenance que tu ouvres pour chacun de tes besoins...
Quelque-soit le workflow choisi: Git encourage le développement sur des branches... la master étant réservée aux versions dites déploayables.
Chaque dévelopepur / intégrateurs / ...
- clone tout ou partie des tes référentiel centraux
- travaille sur un espace de travail local qui lui est propre
- pousse son travail sur une/des branches des référentiels centraux.
Donc comme, tu le vois dans ce workflow tu n'as pas besoin d'avoir plusieurs serveurs...
Note: tu peux trouver le projet git-flow ici.
Concernant l'organisation des projets:
Tu vas créer plusieurs référentiels sur ton serveur. Un par projet ou un par groupe de projets. Tu pourras mettre des dépendances entre repos (c.f. cette discussion) à l'aide des sub-modules ou des sub-trees (attention les sub-trees est une extension de git). Mais là encore il faudra te poser la question de la pertinance de tels lien... Et, comme, dit dans cette discussion: tout dépend aussi des technos de build que tu utiliseras pour construire tes projets.
Concernant ta question sur le poste de dév:
Tes développeurs ne clonent que se dont ils ont besoin; et, celà dépendra de ton organisation des projets...
a+
Philippe