Git pratique - Valiantys - Atlassian Platinum Partner
logo-bleu_rvb.png
Back

Git pratique

Atlassian a fait le grand bond en avant vers Git à la fin de 2012. Fort de leur expérience, ils nous livrent une liste des bonnes pratiques qui font leur succès et qui fonctionneront chez vous.

Git chez Atlassian

Dans leur esprit d’ouverture et de partage de connaissances, les équipes d’Atlassian s’emploient régulièrement à expliquer leurs produits et récemment leurs pratiques techniques aussi. A la suite des articles de blogs détaillant et analysant leur passage à Git cet été, elles se sont lancées dans une série de Webinars pour présenter en détail cette technologie. Récemment, Samuel Le Berrigaud, développeur sur HipChat et Ambassadeur Atlassian en France, nous a livré le webinar Git Workflow. Et dans la langue de Voltaire s’il vous plaît.

Dépôt centralisé

Même si Git permet de sortir du paradigme de centralisation du dépôt, il s’avère être le plus adapté aux entreprises. Les projets de logiciels libres ou open source s’accommodent très bien des modèles type Intégrateur ou Dictateur, car leurs listes des contributeurs n’est pas maitrisable facilement. Pour les entreprises qui connaissent leurs collaborateurs par contre, le risque de congestion au niveau de l’intégration devient trop important et le besoin de décentralisation est rarement important.

Feature branches

Git branchingC’est l’un des gros avantages de Git sur SVN. Nous avons tous connus l’appréhension du merge. Nos belles fonctionnalités toutes fraîches confrontées à l’imparable séance de gestion des conflits. Cette gestion est bien souvent réduite à peau de chagrin par un Git qui nous mâche le travail très largement. Et si vous parvenez à contenir la taille de vos user stories, elle sera bien souvent entièrement gérée par Git.

Autre avantage de l’utilisation de ces feature branches, et non des moindres, elle permettent aux développeurs de remonter leur travail périodiquement sans avoir à se soucier de bloquer leurs collègues, limitant considérablement les risques de pertes de code (entre autre).

Pull Requests

Pull requestsLa bonne façon de garder un contrôle de qualité fort sur le dépôt de référence passe par les pull requests que l’on accompagne de code review. Le logiciel Stash, développé par Atlassian, permet d’automatiser ces codes review pour fluidifier le processus. Il permet aussi de définir finement les contrôles d’accès sur les dépôts qui peuvent être délicats à mettre en place avec Git.

Quid de l’intégration continue ?

intégration continue avec BambooAvec la multiplication des branches, le serveur d’Intégration Continue risque rapidement la surcharge. Même si l’automatisation est reine; comme avec Bamboo qui permet le clonage automatique des plans de branches; elle n’est pas nécessairement obligatoire. Il est notamment envisageable de conserver un lancement manuel des plans de builds sur les feature branches. Là dessus, la dimension de vos équipes vis-à-vis du serveur de build dictera les choix pertinents.

Plus loin avec les hooks de Git

git hooksLes hooks, ou crochets, sont un ensemble de scripts lancés sur des évènements particuliers du cycle de Git et qui permettent de rajouter des actions intéressantes soit côté client, soit côté serveur. On peut notamment appliqué des formatages de code, de la validation de code ou de message de commits, envisager des fusion en cascade, etc. Les crochets sont des outils puissants qui permettent d’automatiser un peu plus encore les processus de développement

Rêve ou réalité ?

Ce qu’Atlassian applique est-il à la portée de n’importe quelle entreprise ? Chez Valiantys, cela fait maintenant 3 semaines que nous avons fait le grand saut vers Git sur l’ensemble de nos produits. Loin d’avoir le recul nécessaire pour analyser l’ensemble des avantages et inconvénients, nous pouvons d’ores et déjà mesurer des changements concrets que nous apporte Git par rapport à SVN.

Rapidité

Vitesse Ce n’est pas un mythe. Git est plus rapide. Le clonage d’un dépôt s’effectue en quelques secondes alors que le checkout initial de SVN prenait plusieurs minutes. Et que dire des analyses d’historique. Étant donné que le dépôt local du développeur contient toutes les informations nécessaires, l’opération est quasi-instantanée. Peu importe la taille de l’historique en question.

Les Feature Branches

On en parle beaucoup, mais elles le méritent entièrement. Les features branches changent significativement la vie des développeurs.

Intégration de l’Usine Logicielle

Usine logicielleNous fonctionnions déjà avec Jira, Confluence et Bamboo. Le passage à Git nous a permis de rajouter Stash (accompagné de SourceTree) pour une intégration toujours plus poussée de nos outils de développement.

En conclusion

Atlassian est une entreprise qui marche, et plutôt bien même si l’on en juge l’évolution de sa base d’utilisateurs ces dernières années. Sa gestion des cycles de vie de ses nombreux produits est l’une des raisons de ce succès. Alors que de nombreuses sociétés peinent à livrer une version par an, chez Atlassian les nouvelles versions arrivent plusieurs fois par trimestres voir toutes les 3 semaines pour certains produits. Et Git est une brique essentielle dans cette réussite.

Cutted Triangle

Subscribe to the Valiantys Newsletter

Demande enregistrée ! Demande en cours... Ceci n'est pas un email Une erreur s'est produite

In accordance with our privacy policy, we are committed to respecting your personal data.

Contact us

Our Atlassian certified consultants will be happy to answer you.

Join us

We're building the next dream team - Are you in?

Follow us

Nous utilisons des cookies pour le fonctionnement de ce site, pour améliorer son utilisation, personnaliser votre expérience et réaliser des statistiques de visite. Vous pouvez gérer les paramètres et choisir d’accepter ou non certains cookies durant votre navigation. Pour plus d’informations, consultez notre politique de confidentialité. Nos politique de confidentialité

Paramètres de confidentialité

Afin de faciliter votre navigation et de vous apporter le meilleur service possible, nous utilisons des cookies pour améliorer le site aux besoins des visiteurs, notamment selon la fréquentation.  Pour plus d’informations, consultez notre politique de confidentialité. Nos politique de confidentialité

Recaptcha

Google reCAPTCHA est un système conçu pour distinguer les humains des ordinateurs, de telle sorte que les bots soient incapables de remplir les formulaires de manière malveillante au nom d’un être humain.

Analytics

Utilisé pour envoyer des données à Google Analytics sur le périphérique et le comportement du visiteur. Suit l'internaute à travers les appareils et les canaux de marketing. Utilisé par Google Analytics pour diminuer radicalement le taux de requêtes. Enregistre un identifiant unique utilisé pour générer des données statistiques sur la façon dont le visiteur utilise le site.

LinkedIn

Cookies pour une publicité ciblée : Ces cookies peuvent être mis en place au sein de notre site Web par nos partenaires publicitaires. Ils peuvent être utilisés par ces sociétés pour établir un profil de vos intérêts et vous proposer des publicités pertinentes sur d'autres sites Web. Ils ne stockent pas directement des données personnelles, mais sont basés sur l'identification unique de votre navigateur et de votre appareil Internet. Si vous n'autorisez pas ces cookies, votre publicité sera moins ciblée.

Cookies "réseaux sociaux" : Ces cookies sont activés par les services proposés sur les réseaux sociaux que nous avons ajoutés au site Web afin de vous donner la possibilité de partager notre contenu avec votre réseau et vos connaissances. Ils nous permettent également de suivre votre navigation sur d’autres sites Web et d’établir un profil de vos intérêts. Cela peut avoir un impact sur le contenu et les messages affichés sur les autres sites Web que vous consultez. Si vous n'autorisez pas ces cookies, il se peut que vous ne puissiez pas utiliser ou visualiser ces outils de partage.