Partage via


À propos de Git dans Visual Studio

Visual Studio fournit une interface utilisateur pour Git, un système de contrôle de version moderne largement utilisé. Que votre code source soit hébergé dans un dépôt GitHub, Azure DevOps ou un autre fournisseur Git, vous pouvez effectuer toutes les tâches courantes de contrôle de version au sein de l’IDE Visual Studio. Vous pouvez également travailler localement sans fournisseur, avec la possibilité de sauvegarder votre source ultérieurement lorsque vous êtes prêt à vous connecter à un fournisseur.

Le code source avec lequel vous travaillez n’a pas besoin d’avoir été créé avec Visual Studio. Vous pouvez utiliser n’importe quel dossier source dans n’importe quel dépôt Git, qu’il existe ou non un fichier projet Visual Studio.

Démarrer avec Git et GitHub dans Visual Studio

Pour commencer à utiliser Git avec Visual Studio :

  • Si vous avez un dépôt Git hébergé sur un fournisseur Git comme GitHub, clonez le dépôt sur votre ordinateur local.

  • Sinon, créez facilement un dépôt Git et ajoutez votre code. Si vous n’avez pas encore de fournisseur Git, nous vous recommandons de commencer avec GitHub, car l’expérience Git dans Visual Studio est optimisée pour ce fournisseur. GitHub offre un stockage de code cloud gratuit et sécurisé dans lequel vous pouvez stocker votre code et y accéder à partir de n’importe quel appareil, n’importe où.

Non seulement vous pouvez ajouter des comptes GitHub et GitHub Enterprise à votre trousseau, mais vous pouvez également les exploiter comme vous le faites avec les comptes Microsoft. Si vous n’avez pas de compte GitHub, procédez comme suit pour créer un compte GitHub à utiliser avec Visual Studio maintenant.

Capture d’écran de la boîte de dialogue Créer un référentiel Git dans Visual Studio.

Si vous souhaitez utiliser des commandes Git sur la ligne de commande, vous devez également installer Git pour Windows (et non un produit Microsoft).

Afficher les fichiers dans l’Explorateur de solutions

Quand vous clonez un dépôt ou ouvrez un dépôt local, Visual Studio bascule vers le contexte Git. L’Explorateur de solutions charge le dossier à la racine du dépôt Git et analyse l’arborescence des répertoires à la recherche des fichiers consultables tels que CMakeLists.txt ou ceux portant l’extension de fichier .sln. Pour plus d’informations, consultez Afficher les fichiers dans l’Explorateur de solutions.

Branches et dépôts distants

Vous pouvez utiliser les branches pour séparer les modifications liées des modifications non liées sur lesquelles vous travaillez également. Le workflow Git recommandé utilise une nouvelle branche pour chaque fonctionnalité ou correctif sur lequel vous travaillez. Découvrez comment créer une branche à partir de Visual Studio.

Une fois que vous avez créé une branche et que vous y basculez, vous pouvez commencer à travailler en changeant des fichiers existants ou en ajoutant de nouveaux fichiers, puis en commitant votre travail dans le dépôt. Pour en découvrir plus sur la création d’un commit dans Visual Studio et pour mieux comprendre les états de fichier dans Git, reportez-vous à la page Créer un commit.

Git est un système de gestion de versions distribué, ce qui signifie que toutes les modifications apportées jusqu’à présent sont des modifications locales uniquement. Pour contribuer à ces modifications sur un dépôt distant, vous devez pousser (push) ces commits locaux vers ce dépôt distant.

Si vous travaillez en équipe ou utilisez des machines différentes, vous pourriez avoir besoin de récupérer (fetch) et tirer (pull) de nouvelles modifications sur le dépôt distant. Pour en découvrir plus sur la gestion des opérations réseau Git dans Visual Studio, reportez-vous à la page Opérations de récupération, tirage, poussée et synchronisation.

IDE Visual Studio avec affichage du menu Git et de l’onglet Modifications Git dans l’Explorateur de solutions.

Gestion des dépôts et collaboration

Toutefois, il est parfois plus judicieux de se concentrer sur votre dépôt Git. Par exemple, vous pouvez avoir besoin d’obtenir une image fidèle de ce sur quoi votre équipe travaille, de copier un commit à partir d’une autre branche ou simplement de nettoyer vos commits sortants. Visual Studio inclut des fonctionnalités puissantes de navigation dans les dépôts et de collaboration qui éliminent la nécessité d’utiliser d’autres outils.

Pour vous aider à vous concentrer sur votre dépôt Git, Visual Studio met à votre disposition une fenêtre Dépôt Git, qui est une vue centralisée de tous les détails de votre dépôt, y compris les branches locales et distantes et l’historique des commits. Vous pouvez accéder à cette fenêtre directement à partir de Git ou Affichage dans la barre de menus ou à partir de la barre d’état.

IDE Visual Studio mettant en évidence le menu Git et l’onglet Modifications Git dans l’Explorateur de solutions.

Parcourir et gérer les dépôts Git

Pour en découvrir plus sur la façon dont vous pouvez utiliser la fenêtre Dépôt Git dans Visual Studio pour parcourir et gérer votre dépôt Git, reportez-vous aux pages suivantes :

Gérer les conflits de fusion

Les conflits peuvent se produire lors d’une fusion si deux développeurs modifient les mêmes lignes dans un fichier et que Git ne sait pas automatiquement quelle modification est correcte. Git arrête la fusion et vous informe que vous êtes dans un état conflictuel. Pour en savoir plus, consultez la page Résoudre les conflits de fusion.

Personnaliser vos paramètres Git

Pour personnaliser vos paramètres Git au niveau d’un dépôt ainsi qu’au niveau global :

  1. Accédez à Git>Paramètres dans la barre de menus ou à Outils>Options>Contrôle de code source>Paramètres globaux Git

  2. Choisissez les options souhaitées.

    Capture d’écran de la boîte de dialogue Options dans laquelle vous pouvez choisir des paramètres de personnalisation dans l’IDE Visual Studio.

Améliorations en matière de productivité

Dans Visual Studio 2022 version 17.12, vous pouvez sélectionner n’importe quelle section de code, puis cliquer avec le bouton droit, développer le sous-menu Git, puis choisir Copier GitHub Permalink (ou Copier AzureDevOps Permalink) pour générer un Lien permalink GitHub ou Azure DevOps Permalink et le copier dans le Presse-papiers. À partir de là, vous pouvez le coller n’importe où un lien peut être utilisé, dans le navigateur ou le partager par e-mail, sessions de conversation et documents. Vous pouvez également effectuer la même opération dans la vue détails de validation incorporée dans la fenêtre Dépôt Git. Cette fonctionnalité vous permet de référencer du code spécifique à partir des validations précédentes sans changer de branches. Vous devez être connecté à Visual Studio avec un compte avec le fournisseur d’hébergement Git, GitHub ou Azure DevOps.

Dans Visual Studio 2022 version 17.6, vous pouvez rechercher et lier des problèmes GitHub et des éléments de travail Azure DevOps. Consultez le billet de blog sur les fonctionnalités de Git destinées à améliorer la productivité.

Git est désormais l’expérience de gestion de versions par défaut dans Visual Studio 2019. Depuis la version 16.6, nous avons travaillé à l’élaboration de l’ensemble de fonctionnalités tout en tenant compte de vos commentaires. Dans la version 16.8, elle est devenue l’expérience de gestion de versions par défaut pour tout le monde.

Notes

Nous poursuivons tous ces efforts sur l’ensemble de fonctionnalités Git dans Visual Studio 2022 également. Pour en découvrir plus sur une mise à jour récente des fonctionnalités, consultez le billet de blog Prise en charge multi-dépôt dans Visual Studio.

En savoir plus sur Git

Git étant le système de gestion de versions moderne le plus utilisé, que vous soyez développeur professionnel ou que vous appreniez à coder, il peut vous être très utile. Si vous débutez avec Git, le site web https://git-scm.com/ est un bon point de départ. Vous y trouverez des aide-mémoire, un livre en ligne populaire et des vidéos Git Basics pour acquérir les bases de Git.

Démarrer avec Git dans Visual Studio 2019

Nous allons vous guider tout au long de l’utilisation de la nouvelle expérience Git dans Visual Studio, mais si vous souhaitez d’abord effectuer une visite guidée rapide, regardez la vidéo suivante :

Durée de la vidéo : 5,27 minutes

Il existe trois façons de commencer à utiliser Git avec Visual Studio pour être plus productif :

  • Créer un dépôt Git. Si vous avez déjà du code qui n’est pas associé à Git, vous pouvez commencer par créer un dépôt Git.
  • Cloner un dépôt Git existant. Si le code sur lequel vous souhaitez travailler n’est pas sur votre ordinateur, vous pouvez cloner des dépôt distants existants.
  • Ouvrir un dépôt Git existant. Si votre code se trouve déjà sur votre ordinateur, vous pouvez l’ouvrir en choisissant Fichier>Ouvrir>Projet/Solution (ou Dossier) et Visual Studio détecte automatiquement s’il a un dépôt Git initialisé.

Notes

À compter de Visual Studio 2019 version 16.8, nous incluons une expérience de compte GitHub entièrement intégrée. Vous pouvez maintenant ajouter des comptes GitHub et GitHub Enterprise à votre trousseau. Vous pourrez les ajouter et les exploiter comme vous le faites avec des comptes Microsoft, ce qui signifie que vous aurez plus de facilité à accéder à vos ressources GitHub dans Visual Studio. Pour plus d’informations, consultez la page Utiliser des comptes GitHub dans Visual Studio.

Conseil

Si vous n’avez pas de compte GitHub, vous pouvez commencer par suivre les étapes décrites dans la Créer un compte GitHub à utiliser avec Visual Studio.

Créer un dépôt Git dans Visual Studio 2019

Si votre code n’est pas associé à Git, vous pouvez commencer par créer un dépôt Git. Pour ce faire, sélectionnez Git>Create un dépôt Git dans la barre de menus. Ensuite, dans la boîte de dialogue Créer un dépôt Git, entrez vos informations.

Boîte de dialogue Créer un dépôt Git dans Visual Studio.

La boîte de dialogue Créer un dépôt Git facilite la poussée de votre nouveau dépôt vers GitHub. Par défaut, votre nouveau dépôt est privé, ce qui signifie que vous seul pouvez y accéder. Si vous décochez la case, votre dépôt sera public, ce qui signifie que toute personne sur GitHub peut l’afficher.

Conseil

Que votre dépôt soit public ou privé, il est préférable d’avoir une sauvegarde à distance de votre code stockée de manière sécurisée sur GitHub même si vous ne travaillez pas en équipe. Vous avez ainsi accès à votre code, quel que soit l’ordinateur que vous utilisez.

Vous pouvez choisir de créer un dépôt Git local uniquement avec l’option Local uniquement. Vous pouvez également lier votre projet local à un dépôt distant vide existant sur Azure DevOps ou tout autre fournisseur Git avec l’option Dépôt distant existant.

Cloner un dépôt Git existant dans Visual Studio 2019

Visual Studio inclut une expérience de clonage simple. Si vous connaissez l’URL du dépôt que vous souhaitez cloner, vous pouvez coller l’URL dans la section Emplacement du dépôt, puis choisir l’emplacement du disque vers lequel vous souhaitez que Visual Studio effectue le clonage.

Boîte de dialogue Cloner un dépôt Git dans Visual Studio.

Si vous ne connaissez pas l’URL du dépôt, Visual Studio vous permet d’accéder à votre dépôt GitHub ou Azure DevOps existant, puis de le cloner facilement.

Ouvrir un dépôt local existant dans Visual Studio 2019

Une fois que vous avez cloné ou créé un dépôt, Visual Studio détecte le dépôt Git et l’ajoute à votre liste de dépôts locaux dans le menu Git.

À partir de là, vous pouvez rapidement accéder à vos dépôts Git et basculer de l’un à l’autre.

Option Dépôts locaux du menu Git dans Visual Studio

Afficher les fichiers dans l’Explorateur de solutions de Visual Studio 2019

Quand vous clonez un dépôt ou ouvrez un dépôt local, Visual Studio vous fait basculer dans ce contexte Git en enregistrant et en fermant les solutions et projets ouverts. L’Explorateur de solutions charge le dossier à la racine du dépôt Git et analyse l’arborescence des répertoires à la recherche des fichiers consultables. Ces fichiers incluent des fichiers tels que CMakeLists.txt ou ceux portant l’extension .sln.

Visual Studio ajuste son affichage en fonction du fichier que vous chargez dans l’Explorateur de solutions :

  • Si vous clonez un dépôt qui contient un seul fichier .sln, l’Explorateur de solutions charge directement cette solution pour vous.
  • Si l’Explorateur de solutions ne détecte aucun fichier .sln dans votre dépôt, il charge par défaut la vue Dossier.
  • Si votre dépôt comporte plusieurs fichiers .sln, l’Explorateur de solutions affiche la liste des vues disponibles parmi lesquelles vous pouvez choisir.

Vous pouvez basculer entre la vue ouverte et la liste des vues avec le bouton Changer de vue dans la barre d’outils de l’Explorateur de solutions.

Explorateur de solutions avec le bouton Changer de vue sélectionné dans Visual Studio.

Pour plus d’informations, consultez la section Afficher les fichiers dans l’Explorateur de solutions du tutoriel Ouvrir un projet à partir d’un dépôt.

Fenêtre Modifications Git dans Visual Studio 2019

Git effectue le suivi des changements de fichier dans votre dépôt à mesure que vous travaillez, et sépare les fichiers de votre dépôt en trois catégories. Ces changements sont équivalents au résultat de la commande git status dans la ligne de commande :

  • Fichiers non modifiés : ces fichiers n’ont pas changé depuis votre dernier commit.
  • Fichiers modifiés : ces fichiers ont changé depuis votre dernier commit, mais vous ne les avez pas encore indexés pour le prochain commit.
  • Fichiers indexés : ces fichiers ont des changements qui seront ajoutés au prochain commit.

À mesure que vous travaillez, Visual Studio effectue le suivi des changements de fichier dans votre projet dans la section Changements de la fenêtre Changements Git.

Fenêtre Modifications Git dans Visual Studio.

Quand vous êtes prêt à indexer les changements, cliquez sur le bouton + (plus) sur chaque fichier que vous souhaitez indexer, ou cliquez avec le bouton droit sur un fichier et sélectionnez Indexer. Vous pouvez également indexer tous vos fichiers modifiés en un seul clic en utilisant le bouton Tout indexer + (plus) en haut de la section Changements.

Quand vous indexez un changement, Visual Studio crée une section Changements indexés. Seuls les changement de la section Changements indexés sont ajoutés au prochain commit, ce que vous pouvez faire en sélectionnant Commit indexé. La commande équivalente de cette action est git commit -m "Your commit message". Vous pouvez également désindexer les changements en cliquant sur le bouton (moins). La commande équivalente de cette action est git reset <file_path> pour désindexer un seul fichier, ou git reset <directory_path> pour désindexer tous les fichiers d’un répertoire.

Vous pouvez également choisir de ne pas indexer vos fichiers modifiés en ignorant la zone d’indexation. Dans ce cas, Visual Studio vous permet de commiter vos changements directement sans avoir à les indexer. Entrez simplement votre message de commit, puis sélectionnez Tout commiter. La commande équivalente de cette action est git commit -a.

Visual Studio facilite également le commit et la synchronisation en un clic en utilisant les raccourcis Tout commiter et pousser et Tout commiter et synchroniser. Quand vous double-cliquez sur un fichier dans les sections Changements et Changements indexés, vous pouvez voir une comparaison ligne par ligne avec la version non modifiée du fichier.

Comparaison ligne par ligne des versions de fichiers dans Visual Studio

Conseil

Vous pouvez associer un élément de travail Azure DevOps à un commit avec le caractère « # » si vous êtes connecté au dépôt Azure DevOps. Vous pouvez connecter votre dépôt Azure DevOps via Team Explorer>Gérer les connexions.

Sélectionner une branche existante dans Visual Studio 2019

Visual Studio affiche la branche actuelle dans le sélecteur en haut de la fenêtre Modifications Git.

Branches actuelles que vous pouvez afficher avec le sélecteur en haut de la fenêtre Modifications Git dans Visual Studio

La branche actuelle est également disponible dans la barre d’état située en bas à droite de l’IDE Visual Studio.

Branches actuelles que vous pouvez afficher avec la barre d’état située en bas à droite dans l’IDE Visual Studio

À partir des deux emplacements, vous pouvez basculer entre les branches existantes.

Créer une branche dans Visual Studio 2019

Vous pouvez aussi créer une branche. La commande équivalente de cette action est git checkout -b <branchname>.

Il est aussi simple de créer une branche que d’entrer le nom de la branche et de la baser sur une branche existante.

Boîte de dialogue Créer une branche dans Visual Studio

Vous pouvez choisir une branche locale ou distante existante comme base. La case à cocher Branche de validation vous bascule automatiquement vers la branche créée. La commande équivalente de cette action est git checkout -b <new-branch><existing-branch>.

Fenêtre Dépôt Git dans Visual Studio 2019

Visual Studio dispose d’une nouvelle fenêtre Dépôt Git, qui est une vue centralisée de tous les détails de votre dépôt, y compris toutes les branches, dépôts distants et historiques des commits. Vous pouvez accéder à cette fenêtre directement à partir de Git ou Affichage dans la barre de menus ou à partir de la barre d’état.

Gérer les branches dans Visual Studio 2019

Quand vous sélectionnez Gérer les branches dans le menu Git, vous voyez l’arborescence des branches dans la fenêtre Dépôt Git. Dans le volet gauche, vous pouvez utiliser le menu contextuel pour extraire des branches, créer des branches ainsi que pour effectuer des opérations de fusion, rebasage, cherry-picking, etc. Quand vous cliquez sur la branche, vous pouvez voir un aperçu de son historique de commits dans le volet droit.

Commits entrants et sortants dans Visual Studio 2019

Quand vous récupérez une branche, la fenêtre Changements Git a un indicateur sous la liste déroulante des branches qui montre le nombre de commits non tirés dans la branche distante. Cet indicateur montre également le nombre de commits locaux non poussés.

Fenêtre Modifications Git montrant l’élément d’interface utilisateur de liste déroulante de l’indicateur dans Visual Studio

L’indicateur fonctionne également comme un lien vers l’historique de commits de cette branche dans la fenêtre Dépôt Git. Le haut de l’historique affiche désormais les détails de ces commits entrants et sortants. À partir de là, vous pouvez également décider de tirer ou de pousser les commits.

Fenêtre Dépôt Git montrant l’historique de commits d’une branche dans Visual Studio

Détails des commits dans Visual Studio 2019

Quand vous double-cliquez sur un commit, Visual Studio ouvre ses détails dans une fenêtre Outil distincte. Là, vous pouvez rétablir le commit, réinitialiser le commit, amender le message de commit ou créer une étiquette sur le commit. Quand vous cliquez sur un fichier changé dans le commit, Visual Studio ouvre la vue Diff du commit et de son parent côte à côte.

Boîte de dialogue Détails du commit dans Visual Studio

Gérer les conflits de fusion dans Visual Studio 2019

Les conflits peuvent se produire lors d’une fusion si deux développeurs modifient les mêmes lignes dans un fichier et que Git ne sait pas automatiquement quelle modification est correcte. Git arrête la fusion et vous informe que vous êtes dans un état conflictuel.

Visual Studio facilite l’identification et la résolution d’un conflit de fusion. Tout d’abord, la fenêtre Dépôt Git affiche une barre d’info dorée dans sa partie supérieure.

Message « Fusion terminée avec conflits » dans Visual Studio

En outre, la fenêtre Modifications Git affiche un message « Fusion en cours avec conflits » et, sous ce dernier, dans une section distincte, les fichiers non fusionnés.

Message « Fusion en cours avec conflits » dans Visual Studio

Toutefois, si aucune de ces fenêtres n’est ouverte et que vous accédez au fichier qui contient des conflits de fusion, vous n’avez pas besoin de rechercher le texte suivant :

    <<<<<<< HEAD
    =======
    >>>>>>> main

À la place, Visual Studio affiche, en haut de la page, une barre d’info dorée qui indique que le fichier ouvert contient des conflits. Vous pouvez alors cliquer sur le lien pour ouvrir l’Éditeur de fusion.

Capture d’écran du message « Le fichier contient des conflits de fusion » dans Visual Studio

Éditeur de fusion dans Visual Studio 2019

L’Éditeur de fusion dans Visual Studio est un outil de fusion triple qui affiche les modifications entrantes, vos modifications actuelles et le résultat de la fusion. Vous pouvez utiliser la barre d’outils au niveau supérieur de l’Éditeur de fusion pour naviguer entre les conflits et les différences fusionnées automatiquement dans le fichier.

Éditeur de fusion dans Visual Studio

Vous pouvez également utiliser les bascules pour afficher/masquer les différences, afficher/masquer les différences de mots et personnaliser la disposition. Vous disposez de cases à cocher en haut de chaque côté pour prendre toutes les modifications d’un côté ou de l’autre. Toutefois, pour prendre des modifications individuelles, vous pouvez cliquer sur les cases à gauche des lignes conflictuelles de chaque côté. Enfin, quand vous avez terminé de résoudre les conflits, vous pouvez sélectionner le bouton Accepter la fusion dans l’Éditeur de fusion. Vous écrivez ensuite un message de commit et commitez les modifications pour terminer la résolution.

Personnaliser vos paramètres Git dans Visual Studio 2019

Pour personnaliser vos paramètres Git au niveau d’un dépôt, ainsi qu’à un niveau global, accédez à Git>Paramètres dans la barre de menus ou à Outils>Options>Contrôle de code source dans la barre de menus. Choisissez ensuite les options souhaitées.

Boîte de dialogue Options dans laquelle vous pouvez choisir des paramètres de personnalisation dans l’IDE Visual Studio.

Comment utiliser l’expérience Team Explorer complète dans Visual Studio 2019

La nouvelle expérience Git est le système de gestion de versions par défaut dans Visual Studio 2019 à compter de la version 16.8. Toutefois, si vous souhaitez la désactiver, vous le pouvez. Accédez à Outils>Options>Environnement>Fonctionnalités d’évaluation, puis cochez la case Nouvelle expérience utilisateur Git, qui vous permet de revenir à Team Explorer pour Git.

Section Fonctionnalités d’évaluation de la boîte de dialogue Options dans Visual Studio

Étapes suivantes

Conseil

Pour en savoir plus sur l’utilisation de Git et GitHub dans Visual Studio, inscrivez-vous à la série d’apprentissage Git.