Introduction au système de contrôle de version GIT

Git est l'un des termes les plus couramment entendus par les programmeurs au cours des quatre à cinq dernières années. Je vais présenter ici un aperçu de cet outil et pourquoi il est si populaire parmi les programmeurs. Dans cette rubrique, nous allons découvrir le système de contrôle de version GIT.

Qu'est-ce que la version Controller et pourquoi?

Linus Torvalds qui a démarré le noyau Linux est la personne qui a créé ce logiciel pour maintenir et suivre différentes versions de code source parmi les programmeurs.

Scénario 1

Imaginez une équipe de cinq membres qui travaillent sur le code source principal en y améliorant différentes fonctionnalités. Pensez simplement comment peuvent-ils travailler sur le même code source sans confusion les uns avec les autres? Chacun doit savoir ce que font les quatre autres et il ne devrait y avoir aucune négligence. Et à la fin de l'heure de travail, ils doivent passer un peu de temps à coordonner leurs travaux afin qu'au moins un code source soit maintenu. Il semble beaucoup d'intervention trépidante et certainement manuelle dans la maintenance du code source est plus risqué. Donc, pour aider ou dire d'automatiser toutes ces versions sur lesquelles les cinq programmeurs travaillent, nous avons besoin d'un contrôleur de version correctement écrit et GIT est l'un d'entre eux. Il existe un terme pour les étapes ci-dessus et son appelé gestion de code source ou gestion de configuration logicielle (SCM).

Scénario # 2

Considérons maintenant un autre scénario où l'automatisation du contrôleur de version est utile. Nous avons écrit la première version du code et le client a approuvé son installation en production. Il s'agit de la version 1.0. Maintenant, après quelques mois, le client propose un travail d'amélioration et vous travaillez sur des écrits antérieurs pour développer la version 1.1 et soumettre au client. Mais le client propose une approche différente et cette version 1.1 ne vous est pas utile selon la nouvelle approche du client. Donc, vous jetez cela et travaillez sur la version 1.2 qui est soumise et approuvée. Et ainsi de suite, vous continuez à développer différentes versions. Mais ne pensez-vous pas que sauvegarder manuellement toutes les versions quelque part et maintenir le code source n'est pas compliqué? À un moment donné, vous devrez peut-être faire référence à la version 1.1 que vous avez jetée et que vous n'avez pas à portée de main.

Donc, pour maintenir différentes versions de code écrites par un ou plusieurs programmeurs, nous utilisons des contrôleurs de version.

Différents types de contrôleur de version

Il existe différents types d'outils disponibles et en voici quelques-uns

  1. Subversion - Depuis développé par Apache, largement utilisé par les fournisseurs d'Apache.
  2. Git
  3. Bazar
  4. Mercuriel

Fondamentalement, il existe deux types de méthodologies de système de contrôle de version sur lesquelles les outils ci-dessus fonctionnent. Elles sont

Système de contrôle de version centralisé (CVCS) Système de contrôle de version distribué (DVCS)

1. CVCS

Voici le code écrit stocké dans le référentiel centralisé ou sur le serveur centralisé. Aucune copie de travail n'est disponible sur les machines locales, ce qui est un énorme inconvénient en cas de défaillance du serveur. J'ai besoin d'avoir une connexion serveur active pour toujours travailler sur le repo. SVN utilise ce système de contrôle

2. DVCS

Ici aussi, nous avons le code source sur le serveur mais avec cela, nous l'avons en tant que copie locale sur les machines qui fonctionnent. Ainsi, même en cas de défaillance au niveau du serveur, nous pouvons renvoyer la copie de travail locale au serveur lors de sa restauration. Cette disponibilité de copie de travail locale sur chaque machine responsable du terme «Dsistriibuted» dans DVCS. Git, Mercurial utilise un système de contrôle de version distribué

Git utilise le concept de branchement ou plus techniquement appelé TBD Development Trunk Based Development. Ce que cela signifie en fait, c'est que nous pouvons créer plusieurs branches à partir du maître et sur ces branches, les programmeurs peuvent travailler et valider leurs modifications sur ces branches et chacune de ces validations est suivie. Et une fois que les clients ont approuvé, nous pouvons fusionner toutes les succursales avec le code maître de la production. De cette façon, n'affectent pas directement le code source principal. Travailler directement sur le code source maître sera plus risqué et doit être évité. Nous pouvons travailler sur les succursales et effectuer divers scénarios de test et une fois que la version finale est stabilisée et approuvée, nous pouvons travailler sur la fusion de celle-ci, ce qui réduit considérablement le risque.

Git est en fait gratuit et pour les utilisateurs Mac, il est disponible par défaut. Sous Linux, nous pouvons installer git et pour Windows, nous avons quelque chose, Git Bash. Il existe deux sources de référentiel les plus populaires où nous pouvons travailler avec Git et ce sont Git Hub et Bit Bucket et l'organisation qui choisit de se baser sur ses préférences.

Avantages du système de contrôle de version GIT

  • Prend en charge la forme de développement héritée qui est une forme de développement linéaire et non linéaire
  • Depuis distribué dans la nature, moins d'inquiétude sur les pannes de serveur monopoint. Nous pouvons toujours renvoyer le code du dépôt local vers le serveur.
  • Nous pouvons également implémenter une couche de sécurité au-dessus de git qui peut attribuer des restrictions d'accès en commit pull et push.
  • Peut fonctionner sur plusieurs plateformes comme Mac, Linux, Windows, etc.
  • Absolument gratuit et open-source
  • Efficace et rapide grâce à sa nature distribuée
  • Suivi clair des validations, mises à jour, révisions, versions, push et pulls
  • Fournit GitBash pour les fenêtres faciles à utiliser.
  • Il existe également diverses interfaces graphiques disponibles pour travailler sur GIT
  • Il ne nécessite pas de connexion réseau active depuis la disponibilité du référentiel local.

Travailler avec Git

  • Créer la branche de travail à partir du maître source ou d'une autre branche en fonction de l'exigence
  • Clonez la branche sur local en utilisant GitBash pour Windows
  • Travailler sur la branche et y apporter des modifications ou des ajouts de composants
  • Validez les modifications et référez le tracker de validation
  • Si vous pensez que la validation n'était pas nécessaire, vous pouvez rétablir la validation sur la précédente
  • Si plusieurs programmeurs travaillent sur la même branche, le dépôt local doit être mis à jour avant de pousser vos modifications. Donc, effectuez PULL
  • Vous pourrez maintenant effectuer le PUSH
  • Une fois l'examen et l'approbation du code effectués dans votre succursale, nous pouvons déplacer le code vers la production par ansible ou par tout autre moyen utilisé par l'organisation.
  • Fusionnez la branche au maître afin que nous ayons mis à jour le code.

Git est le système de contrôle de version distribué le plus couramment utilisé en raison de sa nature distribuée, sans point de défaillance unique et est open source. Vous pouvez essayer de l'utiliser avec des exemples de code dans GitHub et GitBash dans Windows PC, car les commandes git sont simples et facilement disponibles en ligne.

Articles recommandés

Ceci est un guide du système de contrôle de version GIT. Ici, nous discutons des différents types de contrôleur de version avec des avantages et du travail. Vous pouvez également consulter l'article suivant pour en savoir plus-

  1. Commandes GIT
  2. Introduction à GIT
  3. Git Alternatives
  4. Qu'est-ce que Git?
  5. Versions de Tableau
  6. Git Origin Master
  7. Qu'est-ce que Hub?
  8. Trois étapes du cycle de vie de Git avec le workflow
  9. Comment utiliser GIT Cherry-pick avec l'exemple?

Catégorie: