Git poule ? Git canard ? đ€Ż
Hello,
Aujourdâhui, on va parler de GIT.
Git, juste pour rappel, est le gestionnaire de version de code le plus en vogue.
Il est hyper puissant...mais comme tout, il y a des bases Ă avoir
Je te rassure on ne va pas entrer dans le détail des commandes
On va voir une façon de faire et ses avantages.
Si ce n'est pas dĂ©jĂ fait, tu peux :Â
DĂ©couvrir notre formation sur le DevOpsÂ
Lire toutes les éditions prĂ©cĂ©dentes de la newsletterÂ
Au programme :
Une histoire de branche
Quel intĂ©rĂȘt ?
Une histoire de branche
Git permet un développement collaboratif.
Chaque Dev développe dans son coin des features et puis on peut tout remettre ensemble de façon sereine.
Ăa marche grĂące aux branches :
On a une branche principale 'master' (ou 'main') : c'est lĂ que sera le code en production
On crée une branche secondaire dite de "dev" : c'est là que sera le code en phase de développement et de tests
à chaque développement (nouvelle feature ou correction de bug), on utilise une nouvelle branche.
Donc le workflow.
Je dois développer une nouvelle feature, je crée une branche à partir de Dev
Quand j'ai fini mon dev, je fais un merge de ma branche dans Dev
Je teste que tout est OK sur Dev
On fait ça quelques fois.
On se retrouve avec Dev qui est bien avancé maintenant.
Je dĂ©cide que les derniĂšres features doivent ĂȘtre poussĂ©es en production.
Je fais un merge de Dev dans Main/Master.
J'ai maintenant le code source dans Master qui est prĂȘt Ă ĂȘtre dĂ©ployĂ© sur le serveur de prod.
Quel intĂ©rĂȘt ?
Ben si tu dĂ©v sur ton projet tout seul dans ton coin, aucun intĂ©rĂȘt, a priori. (en fait, si ca a toujours un intĂ©rĂȘt)
Par contre, cette façon de faire est assez répandue dans les équipes.
Le fait d'utiliser les branches et les merges te permettent d'associer des actions automatiques.
Par exemple : dÚs qu'une demande de merge est faite sur la branche Dev, lancer les tests automatiquement. Si le résultat est OK, on peut merger, sinon c'est automatiquement refuser.
DÚs que le merge est OK, déployer automatiquement le code source sur l'environnement de test
Idem pour un merge de Dev vers Main pour un environnement de production
Un outil pour faire tout ça est par exemple Gitlab
Maintenant que ce mécanisme fonctionne, on peut ajouter une notion de responsabilité
Un Dev est responsable de la branche Dev et des tests associés (tests unitaires ou fonctionnels)
Il est le seul Ă avoir les droits d'accepter un merge sur Dev
Un Lead Tech est responsable de la branche Main. Idem il est le seul Ă avoir les droits d'accepter un merge du Main.
Ăa permet de limiter le risque de mettre des conneries sur la production (en thĂ©orie)
Pour aller plus loin
Tu peux apprendre les différentes commandes GIT pour gérer les branches et les merges
Tu peux essayer GitLab pour faire gĂ©rer tes projets selon cette mĂ©thode mĂȘme si t'es seul
Tu peux regarder d'autres méthodes (sur des projets Open Source sur GitHub par exemple)
Conclusion
GIT ça permet de faire plein de choses. Mais commencer par une mĂ©thode simple te permettra de monter en compĂ©tence et mĂȘme inventer tes propres workflow
Dans tous les cas, ça doit ĂȘtre fait dans un but : gagner du temps, automatiser, limiter les erreurs...
VoilĂ :)
Tes cadeaux pour te remercier de partager la newsletter
Pour rappel, si tu recommandes la newsletter Ă dâautres personnes, voici les rĂ©compenses que tu peux gagner :
25 recommandation â On met en avant ton profil dans un article
50 recommandations â Une visio de 20 min de mentoring DevSecOps avec nous
100 recommandations â Une de nos formations aux choix offertes
Il te suffit de cliquer sur le bouton juste en dessous pour obtenir ton lien personnalisé :
VoilĂ , câest tout pour aujourdâhui.
On est curieux dâavoir tes retours.
Partage nous tes réactions en répondant à ce mail.
Si tu as aimĂ© cet article, nâoublie pas de mettre un petit like ! Ăa nous aide Ă comprendre quels sujets on dois creuser.
Passe une excellente journée et à  la prochaine.

