Actuellement, mon site Web (serveur de production) contient déjà beaucoup de code. Et maintenant, je veux commencer à utiliser Git pour mes projets et configurer un serveur de transfert pour mon équipe. Quelqu'un peut-il me donner des conseils?
Voici l'image dans mon esprit:
Production - Production server which already have codes
↑
Staging - New staging server, will install Trac too
↗↙ ↖↘
Developer1 Developer2 - Local development
Ma question est, comment dois-je commencer?
Voici quelques étapes dans mon esprit:
git init
dans le serveur de production (est-ce sûr?)clone
le dépôt de la production au serveur intermédiaireclone
le dépôt du staging à leur machine localePush
fichiers vers le serveur intermédiaire après avoir terminé la modificationPush
tout à la productionCe flux de travail est-il logique ou existe-t-il une meilleure façon de le faire?
Que faire si je ne souhaite modifier qu'un seul fichier?
Est-ce que Origin/master y est pour quelque chose? Quelle est l'origine? vais-je finir par avoir plusieurs origines ??
De plus, quand un développeur doit-il utiliser branch
dans ce cas?
Il est préférable d'utiliser la branche principale uniquement pour la branche Production et développement pour la mise en scène. Chaque développeur doit créer une branche locale pour ajouter de nouvelles fonctionnalités, puis fusionner avec la branche de développement. Si vous êtes nouveau dans un git, essayez d'utiliser - http://github.com/nvie/gitflow Il y a aussi une bonne image décrivant le modèle de branchement git - http: // nvie .com/articles/un modèle de branchement-git réussi /
Votre suggestion semble correcte, mais je ne laisserais pas les développeurs pousser directement vers le serveur de transfert. Au lieu de cela, un intégrateur devrait examiner attentivement les branches et les incorporer dans la branche principale (ou la branche de développement si vous utilisez le modèle de flux git comme suggéré par bUg.) * La même personne pousserait vers la mise en scène serveur.
1. faire un init git dans le serveur de production (est-ce sûr?)
Oui, c'est sûr, mais vous devez bien sûr définir des autorisations très restrictives sur ce dépôt. Je commencerais probablement par curl
ing l'ensemble du site Web sur un disque local, si je ne l'ai pas déjà.
2. cloner le référentiel de la production au serveur intermédiaire
Vous devriez probablement avoir un dépôt "central" distinct à la fois du serveur de production et du serveur intermédiaire. Celui-ci peut être cloné et poussé au besoin.
3. les développeurs clonent le dépôt du staging sur leur machine locale
4. Poussez les fichiers sur le serveur de transfert après avoir terminé de modifier
5. lorsque la mise en scène est prête, Poussez tout à la production
Remplacez "staging" par "central" et je pense que vous allez bien, mais le plus gros problème est de savoir comment vous allez travailler avec les branches et la fusion, comme le souligne bUg.