Skip to main content

À propos de la comparaison des branches dans les demandes de tirage

Les demandes de tirage (pull request) affichent des différences qui permettent de comparer les modifications que vous avez apportées dans votre branche de rubrique par rapport à la branche de base dans laquelle vous souhaitez fusionner vos modifications.

Remarque : lorsque vous créez votre demande de tirage, vous pouvez modifier la branche de base à laquelle vous comparez vos modifications. Pour plus d’informations, consultez « Création d’une demande de tirage ».

Vous pouvez afficher les modifications proposées dans une demande de tirage sous l’onglet Fichiers modifiés. Capture d’écran des onglets d’une demande de tirage. L’onglet « Fichiers modifiés » est indiqué en orange foncé.

Au lieu d’afficher les validations elles-mêmes, vous pouvez afficher les modifications proposées à mesure qu’elles apparaissent dans les fichiers une fois la demande de tirage fusionnée. Les fichiers apparaissent par ordre alphabétique sous l’onglet Fichiers modifiés. Les ajouts aux fichiers s’affichent en vert et sont précédés d’un signe + tandis que le contenu supprimé s’affiche en rouge et est précédé d’un signe -.

Options d’affichage des différences

Astuce : si vous éprouvez des difficultés à comprendre le contexte d’une modification, vous pouvez cliquer sur Afficher sous l’onglet Fichiers modifiés pour afficher le fichier entier avec les modifications proposées.

Vous avez plusieurs options pour afficher un différence.

  • L’affichage unifié présente le contenu mis à jour et existant ensemble dans une vue linéaire.
  • L’affichage fractionné présente l’ancien contenu d’un côté, et le nouveau contenu de l’autre.
  • L’affichage des différences enrichi présente un aperçu de l’apparence des modifications une fois la demande de tirage fusionnée.
  • L’affichage source présente les modifications apportées à la source sans la mise en forme de l’affichage des différences enrichie.

Vous pouvez également choisir d’ignorer les modifications d’espace blanc pour obtenir une vue plus précise des modifications substantielles dans une demande de tirage.

Capture d’écran de l’onglet « Fichiers changés » d’une demande de tirage. Le menu « Vue Diff » est indiqué en orange foncé.

Pour simplifier la révision des modifications dans une demande de tirage volumineuse, vous pouvez filtrer les différences pour afficher uniquement les types de fichiers sélectionnés, afficher les fichiers dont vous êtes un CODEOWNER, masquer les fichiers que vous avez déjà affichés, ou masquer les fichiers supprimés. Pour plus d’informations, consultez « Filtrage des fichiers dans une demande de tirage ».

Capture d’écran du menu déroulant de filtre de fichiers. Le menu est développé et indiqué en orange foncé.

Raisons pour lesquelles des différences ne s’affichent pas

Comparaisons des différences Git sur trois points et deux points

Il existe deux méthodes de comparaison pour la commande git diff : sur deux points (git diff A..B) et sur trois points (git diff A...B). Par défaut, les demandes de tirage sur GitHub affichent une différence sur trois points.

Comparaison des différences Git sur trois points

La comparaison sur trois points montre la différence entre la dernière validation commune de deux branches (base de fusion) et la version la plus récente de la branche de rubrique.

Comparaison des différences Git sur deux points

La comparaison sur deux points montre la différence entre l’état le plus récent de la branche de base (par exemple main) et la version la plus récente de la branche de rubrique.

Pour voir deux références committish dans une comparaison de différences sur deux points sur GitHub, vous pouvez modifier l’URL de la page « Comparaison des modifications » de votre dépôt. Pour plus d’informations, consultez le terme « commitish » dans le glossaire Git sur le site du livre Pro Git.

Par exemple, cette URL utilise des codes SHA raccourcis pour comparer les commits f75c570 et 3391dcc : https://github.com/github-linguist/linguist/compare/f75c570..3391dcc.

Un différence sur deux points compare deux références committish Git, telles que des SHAs ou des OID, directement entre elles. Sur GitHub, les références committish Git dans une comparaison de différences sur deux points doivent être envoyées (push) au même dépôt ou à ses duplications.

Si vous souhaitez simuler une différence sur deux points dans une demande de tirage et voir une comparaison entre les versions les plus récentes de chaque branche, vous pouvez fusionner la branche de base dans votre branche de rubrique, ce qui a pour effet de mettre à jour le dernier ancêtre commun de vos branches.

Pour plus d’informations sur les commandes Git pour comparer les modifications, consultez « Options de différences Git » sur le site du livre Pro Git.

À propos de la comparaison sur trois points sur GitHub

Étant donné que la comparaison sur trois points effectue une comparaison avec la base de fusion, elle se concentre sur « ce qu’introduit une demande de tirage ».

Lorsque vous utilisez une comparaison sur deux points, la différence change lorsque la branche de base est mise à jour, même si vous n’avez apporté aucune modification à la branche de rubrique. En outre, une comparaison sur deux points se concentre sur la branche de base. Cela signifie que tout ce que vous ajoutez est affiché comme absent de la branche de base, comme s’il s’agissait d’une suppression, et inversement. Par conséquent, les modifications apportées à la branche de rubrique deviennent ambiguës.

En revanche, en comparant les branches à l’aide de la comparaison sur trois points, les modifications apportées à la branche de rubrique figurent toujours dans la différence si la branche de base est mise à jour, car la différence affiche toutes les modifications depuis que les branches ont divergé.

Fusion fréquente

Pour éviter toute confusion, fusionnez fréquemment la branche de base (par exemple, main) dans votre branche de rubrique. En fusionnant la branche de base, les différences affichées par les comparaisons sur deux points et sur trois points sont identiques. Nous vous recommandons de fusionner une demande de tirage dès que possible. Cela encourage les contributeurs à réduire la taille des demandes de tirage, ce qui est recommandé en général.

Pour aller plus loin