Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019
Visual Studio 2019 | Visual Studio 2022
Git utilise des métadonnées de validation telles que les liens parent, les détails de l’auteur et les horodatages pour suivre l’historique des modifications dans un référentiel. Découvrez de quelle manière passer en revue l’historique Git pour savoir quand les fichiers ont changé, qui les a modifiés et quelles modifications ont été apportées.
Lorsque des personnes créent et fusionnent des branches de fonctionnalité dans une branche cible à l’aide de demandes de tirage, l’historique du développement de la branche cible peut ne pas être une ligne chronologique droite. Par conséquent, lorsque vous passez en revue l’historique des modifications apportées à un fichier sur la branche cible, gardez à l’esprit que l’ordre des validations est influencé par la stratégie de fusion et la date de fusion, et non pas uniquement par la date d’origine des modifications. Par exemple, la validation la plus récente sur la main branche peut introduire une modification effectuée il y a des semaines dans un branche de fonctionnalité récemment fusionnée dans la branche main à l’aide d’une fusion triple.
Lorsque vous souhaitez déterminer comment et quand un changement de fichier précis s’est produit, vous devrez peut-être comparer différentes versions du même fichier à partir de différentes validations, éventuellement dans différentes branches.
Le site du projet d’équipe Azure DevOps vous permet de comparer deux versions du même fichier à partir des validations dans la même branche, mais ne prend pas en charge la comparaison des versions de fichiers entre les branches.
À partir de votre navigateur web, ouvrez le projet d’équipe pour votre organisation Azure DevOps. Dans la vue Fichiers du >référentiel, sélectionnez un fichier et choisissez l’onglet Comparer.
Sous l’onglet Comparer, choisissez les deux validations contenant les versions de fichiers que vous souhaitez comparer. La vue diff affiche les lignes de fichiers nouvelles, supprimées ou modifiées.
Notes
GitHub vous permet de comparer deux versions du même fichier à partir de validations différentes sur différentes branches. Pour comparer, ajoutez /compare/<commit1>..<commit2> à l’URL de votre référentiel GitHub pour accéder à la page de comparaison. La page de comparaison contient une vue diff de chaque fichier qui diffère. Pour plus d’informations concernant la comparaison des validations dans GitHub, consultez Comparaison des validations.
Visual Studio 2022 offre une expérience de contrôle de version Git à l’aide du menu Git, des modifications Git et des menus contextuels dans l’Explorateur de solutions. Visual Studio 2019 version 16.8 offre également l’interface utilisateur Git de Team Explorer. Pour plus d’informations, consultez l’onglet Visual Studio 2019 - Team Explorer.
Visual Studio vous permet de comparer deux versions du même fichier dans la même branche, mais ne prend pas en charge la comparaison des versions de fichiers entre les branches.
Dans Explorateur de solutions, sélectionnez un fichier et choisissez Historique de l’affichage Git> depuis le menu contextuel du fichier pour ouvrir l’onglet Historique Git du fichier sélectionné.
Sous l’onglet Historique Git, choisissez Comparer avec précédent dans le menu contextuel d’une validation pour ouvrir un onglet Diff comparant la validation sélectionnée avec la validation précédente.
Vous pouvez également sélectionner deux validations et choisir Comparer dans le menu contextuel de la validation pour ouvrir un onglet Diff comparant les deux validations sélectionnées.
L’onglet Diff affiche les lignes de fichier nouvelles, supprimées ou modifiées.
Visual Studio 2019 offre une expérience de contrôle de version Git à l’aide du menu Git, des modifications Git et des menus contextuels dans l’Explorateur de solutions.
Visual Studio vous permet de comparer deux versions du même fichier dans la même branche, mais ne prend pas en charge la comparaison des versions de fichiers entre les branches.
Dans Explorateur de solutions, sélectionnez un fichier et choisissez Historique de l’affichage Git> depuis le menu contextuel du fichier pour ouvrir l’onglet Historique Git du fichier sélectionné.
Sous l’onglet Historique Git, choisissez Comparer avec précédent dans le menu contextuel d’une validation pour ouvrir un onglet Diff comparant la validation sélectionnée avec la validation précédente.
Vous pouvez également sélectionner deux validations et choisir Comparer dans le menu contextuel de la validation pour ouvrir un onglet Diff comparant les deux validations sélectionnées.
L’onglet Diff affiche les lignes de fichier nouvelles, supprimées ou modifiées.
Team Explorer ne fournit pas de prise en charge pour cette fonctionnalité.
La commande git diff peut comparer différentes versions du même fichier à partir de différentes validations entre différentes branches. La commande git log peut vous aider à identifier les validations contenant les versions de fichiers que vous souhaitez comparer.
Utilisez git log et spécifiez un fichier pour répertorier les validations ayant modifié le fichier :
git log <file>
Par défaut, la sortie de la commande commence par la validation la plus récente de la branche actuelle, puis revient sur les validations antérieures (quelle que soit la branche) en suivant les liens parent dans les métadonnées de chaque validation.
Voici un exemple de sortie de la commande git log index.html :
La sortie indique qu’une ligne a été supprimée et qu’une ligne a été ajoutée.
Limiter la sortie du journal Git
Pour limiter] les validations répertoriant git log, vous pouvez filtrer par auteur, date, message, contenu modifié, etc. Par exemple :
git log --author=frank@fabrikam.com index.html répertorie uniquement les validations effectuées par l’auteur spécifié.
git log --since="2022-5-1" répertorie uniquement les validations créées après la date spécifiée.
git log --before="yesterday" répertorie uniquement les validations créées avant la date relative spécifiée.
git log --grep="css change" répertorie uniquement les validations avec le texte spécifié dans leur message.
git log -S"myVariable" répertorie uniquement les validations introduisant ou supprimant la chaîne spécifiée.
git log -G"myVar.*" répertorie uniquement les validations introduisant ou supprimant la chaîne regex spécifiée.
git log -3 répertorie uniquement les trois dernières validations.
Formater la sortie du journal Git
Vous disposez de plusieurs options de format pour la liste de validations. Par exemple :
git log --abbrev-commit répertorie les validations à l’aide d’un ID abrégé (somme de contrôle SHA-1).
git log --oneline répertorie chaque validation dans un format abrégé sur une seule ligne.
git log --patch index.htmlrépertorie chaque validation avec un diff des modifications.
Restaurer des fichiers
Vous pouvez restaurer une version spécifique d’un fichier à partir de l’historique Git, même si le fichier a été modifié, supprimé ou renommé dans une validation ultérieure. La restauration d’une version antérieure d’un fichier ne crée pas de validation avec la modification. Pour mettre à jour votre branche avec la version de fichier restaurée, vous devez valider la modification.
Le site du projet d’équipe Azure DevOps vous permet de rétablir toutes les modifications apportées par une validation spécifique, mais ne prend pas en charge la restauration des modifications apportées à un fichier spécifique de la validation.
Visual Studio vous permet de comparer deux versions du même fichier dans la même branche, mais ne prend pas en charge la comparaison des versions de fichiers entre les branches.
Dans Explorateur de solutions, sélectionnez un fichier et choisissez Historique de l’affichage Git> depuis le menu contextuel du fichier pour ouvrir l’onglet Historique Git du fichier sélectionné.
Sous l’onglet Historique Git, choisissez Comparer avec précédent dans le menu contextuel d’une validation pour ouvrir un onglet Diff comparant la validation sélectionnée avec la validation précédente.
Vous pouvez également sélectionner deux validations et choisir Comparer dans le menu contextuel de la validation pour ouvrir un onglet Diff comparant les deux validations sélectionnées.
L’onglet Diff affiche les lignes de fichier nouvelles, supprimées ou modifiées.
Visual Studio vous permet de comparer deux versions du même fichier dans la même branche, mais ne prend pas en charge la comparaison des versions de fichiers entre les branches.
Dans Explorateur de solutions, sélectionnez un fichier et choisissez Historique de l’affichage Git> depuis le menu contextuel du fichier pour ouvrir l’onglet Historique Git du fichier sélectionné.
Sous l’onglet Historique Git, choisissez Comparer avec précédent dans le menu contextuel d’une validation pour ouvrir un onglet Diff comparant la validation sélectionnée avec la validation précédente.
Vous pouvez également sélectionner deux validations et choisir Comparer dans le menu contextuel de la validation pour ouvrir un onglet Diff comparant les deux validations sélectionnées.
L’onglet Diff affiche les lignes de fichier nouvelles, supprimées ou modifiées.
Visual Studio 2019 version 16.8 et versions ultérieures fournit une expérience de gestion de version Git tout en conservant l’interface utilisateur Git de Team Explorer. Pour utiliser Team Explorer, décochez Outils>Options>Fonctionnalités en préversion>Nouvelle expérience utilisateur Git dans la barre du menu.
Dans Explorateur de solutions, sélectionnez un fichier et choisissez Historique de l’affichage Git> depuis le menu contextuel du fichier pour ouvrir l’onglet Historique Git du fichier sélectionné.
Sous l’onglet Historique Git, sélectionnez une validation et choisissez Afficher les détails de la validation depuis le menu contextuel de la validation pour ouvrir la vue Détails de la validation.
Dans l’affichage Détails de la validation, sélectionnez le fichier et choisissez Ouvrir dans le menu contextuel du fichier pour ouvrir la version précédente du fichier dans un nouvel onglet.
Choisissez Fichier > Enregistrer sous dans la barre de menus pour enregistrer la version restaurée du fichier.
Vous pouvez utiliser les commandes extraction git ou présentation git pour restaurer une version spécifique d’un fichier à partir de l’historique Git.
Extraction git rétablit un fichier à une version précédemment validée si vous spécifiez le fichier et une validation :
git checkout <commit> <file>
Par exemple, git checkout 85435fac src/app.ts rétablit le fichier src/app.ts à sa version dans la validation 85435fac.
Présentation git imprime le contenu d’une version de fichier précédemment validée, que vous pouvez rediriger vers un fichier de sortie :
git show <commit>:<file> > <output file>
Par exemple, git show 85435fac:src/app.ts > /archive/oldapp.ts écrit le contenu de app.ts dans la validation de 85435fac à /archive/oldapp.ts.
Vous pouvez comparer n’importe quelle branche locale ou distante pour passer en revue les modifications qui résulteront d’une fusion ou d’un rebase. La comparaison de branches vous permet de vérifier les conflits de fusion et de déterminer de quelle manière les modifications apportées par d'autres personnes peuvent affecter votre travail.
Visual Studio 2019 et les versions antérieures ne prennent pas en charge la comparaison de branches. Par conséquent, si vous utilisez l’une de ces versions, vous pouvez comparer des branches sur la ligne de commande Git ou à l’aide de votre navigateur web, si votre référentiel est hébergé dans Azure Repos ou GitHub. Visual Studio 2022 prend en charge la comparaison de branches, comme décrit dans Comparer les branches.
À partir de votre navigateur web, ouvrez le projet d’équipe pour votre organisation Azure DevOps. Dans l’affichage Branches de>référentiel, sélectionnez les points de suspension d’une branche et choisissez Comparer les branches pour ouvrir l’affichage Comparaison de branches.
Dans l’affichage Comparaison de branches, choisissez les deux branches que vous souhaitez comparer. Sélectionnez l’onglet Fichiers pour une vue diff des lignes nouvelles, supprimées ou modifiées dans chaque fichier modifié.
Notes
GitHub prend en charge la comparaison de branches. Pour comparer, ajoutez /compare/<branch1>...<branch2> à l’URL de votre référentiel GitHub pour accéder à la page de comparaison. La page de comparaison contient une vue diff de chaque fichier qui diffère. Pour plus d’informations concernant la comparaison des branches dans GitHub, consultez Comparaison des branches.
Pour comparer une branche avec la branche actuelle, cliquez avec le bouton droit sur une branche dans le volet Branches de votre référentiel, puis sélectionnez l’option Comparer. Le menu contextuel spécifie les noms des branches actuelles et cibles :
Visual Studio 2019 ne prend pas en charge la comparaison de branches. Toutefois, vous pouvez comparer des branches sur la ligne de commande Git ou à l’aide de votre navigateur web, si votre référentiel est hébergé dans Azure Repos ou GitHub.
Conseil
Vous pouvez accéder au portail web à partir de l’affichage Accueil Team Explorer en choisissant Portail web.
Visual Studio 2019 ne prend pas en charge la comparaison de branches. Toutefois, vous pouvez comparer des branches sur la ligne de commande Git ou à l’aide de votre navigateur web, si votre référentiel est hébergé dans Azure Repos ou GitHub.
Conseil
Vous pouvez accéder au portail web à partir de l’affichage Accueil Team Explorer en choisissant Portail web.
Pour comparer deux branches locales ou distantes, vous pouvez utiliser la commande Git diff en spécifiant les noms de branche :
git diff <branch1> <branch2>
Git compare la validation à l’extrémité d’une branche avec la validation au bout de l’autre. La sortie diff affiche les suppressions et les ajouts entre chaque fichier dans les deux branches.
Voici un exemple de sortie pour la commande git diff users/frank/feature origin/main, qui compare une branche locale à une branche distante :
index 36843b8..03afc4b 100644
--- a/tsapp/index.html
+++ b/tsapp/index.html
@@ -4,7 +4,7 @@
<head>
<meta charset="utf-8" />
<title>TypeScript HTML App</title>
- <link rel="stylesheet" href="fabrikam-test.css" type="text/css" />
+ <link rel="stylesheet" href="fabrikam.css" type="text/css" />
<script src="app.js"></script>
</head>
...
--- a/tsapp/app.ts
+++ b/tsapp/app.ts
constructor(element: HTMLElement) {
this.element = element;
- this.element.innerHTML += "The time is: ";
+ this.element.innerHTML += "The time is now: ";
this.span = document.createElement('span');
this.element.appendChild(this.span);
this.span.innerText = new Date().toUTCString();
Pour affiner la comparaison à un fichier spécifique, spécifiez le fichier dans la commande diff :
git diff <branch1> <branch2> <file>
Par exemple, git diff users/frank/feature origin/main index.html génère uniquement une diff pour le fichier index.html.