Gestion du code source : Outils et commandes

Azure DevOpsGIT
Aymen SAIDI - 2/11/2022, 11:04:32 AM0 commentaire

Git est-il le meilleur ?

GIT est un système de contrôle de version distribue, GIT a une approche peer to peer contrairement à d'autres tels que Subversion qui opte pour l'architecture client/serveur.

Dans GIT toutes les opérations sont atomique, chaque action peut soit réussir soit échouer contrairement à d'autres systèmes de contrôle de version.











Concept Git :


  • Origin : Données provenant du serveur
  • Local : Données provenant de la machine local (PC de Dev)
  • La totalité du dépôt est copiée en local (clone ou pull).
  • Passer sur une autre branche récupère l’état LOCAL, si elle existe déjà.
  • Le dépôt local contient deux choses :

- L’état de travail de la branche courante.

- L’état des branches « remotes » lors du clone ou du dernier pull.


Concept : Commit


Un commit contient une ensemble de modifications (ajout, suppression).Elle est représenté par un HASH unique et elle contient un message permettant de donner du contexte.

Le cumul des modifications crée l’historique du dépôt.

Concept : Branche


Une branche est constituée d’un ensemble de commit. Plusieurs branches fonctionnent en parallèles et chaque branche est un ensemble de différences relatives à son point de création.


Concept : Master


C'est une branche par défaut crée automatiquement, elle n’a rien de spécial, c’est simplement une habitude d’usage.

En général, elle réunit le code en production.


Concept : Head


 Le pointeur courant où se trouve votre dépôt local.


Detached Head signifie que HEAD ne se situe pas sur le dernier commit de votre branche courante.



Concept : Historique Git


L'historique Git c'est l'ensemble des commits contenue dans votre branche.

Git log est la commande qui permet d'afficher la liste des commits :





Base: Créer un Dépôt


Sur Azure DevOps on crée les dépôts comme suit :


Base : Cloner un dépôt


Pour Cloner un dépôt en local depuis azure DevOps :

  • Cliquer sur Repos
  • Cliquer sur « Clone »
  • Cliquer sur « Clone in Visual Studio »
  • Cliquer sur « Ouvrir MVS Web Protocol Handler Selector » Et suivre les étapes dans Visual Studio.


En ligne de commande :

copier le lien de dépôt a partir de Repos Azure DevOps


Base : Récupération


C'est de mettre à jour les éléments locaux avec ceux du serveur.la mise à jour ce faite seulement sur la branche courante.




Base : Status


Cette commande nous permet de consulter les modifications et commit en cours et aussi suivre l'avancement de travail en local.




Base : Pousser


C'est d'ajouter des modifications dans un commit et les envoyer auprès de serveur et il est possible de faire plusieurs commit avant de faire push.

on peut choisir les modifications qu'on voulais commit avec la commande stage(indexer).



Base : Créer une branche

l’intérêt de travailler avec des branches c'est de travailler sans impacter le fonctionnement des autres et aussi séparer le travail en cours de travail terminer ainsi que de basculer d'un sujet à un autre facilement .

Avancé : Fetch,Push,Pull,Sync


  • Fetch : Récupération des éléments de « origin » sans altérer les éléments locaux.
  • Push : Envoie des éléments sur le « origin ».
  • Pull : « Fetch » puis « Merge ».
  • Sync : « Pull » puis « Push ».

Avancé : Mettre à coté "Stash"

Cette commande permet de mettre les modifications en cours de coté et les ré appliquer ultérieurement.

Avancé : Récupérer un commit "Cherry-Pick"


« cherry-pick » permet de récupérer un commit n’importe où dans le dépôt. c'est très utiles pour déplacer un élément de code dans différentes branches non liées.



Avancé : Annuler les modifications en local " reset"

permet de supprimer les modifications seulement en LOCAL, commit (non push) inclus.

  • Soft : Conserve les commits et les éléments indexés.
  • Hard : Supprimer TOUT.
  • mixed : Les modifications non commiter et non indexer.




Avancé : Submodule


Cela signifie d'importer un dépôt dans un dépôt est c'est très pratiques pour réutiliser des éléments communs à plusieurs projets.


Commentaires :

Aucun commentaires pour le moment


Laissez un commentaire :

Réalisé par
Expaceo