{"meta":{"title":"Extraction d’un commit dans GitHub Desktop","intro":"Vous pouvez utiliser GitHub Desktop pour extraire un précédent commit dans votre référentiel.","product":"GitHub Desktop","breadcrumbs":[{"href":"/fr/desktop","title":"GitHub Desktop"},{"href":"/fr/desktop/managing-commits","title":"Gestion des commits"},{"href":"/fr/desktop/managing-commits/checking-out-a-commit-in-github-desktop","title":"Extraction d’un commit"}],"documentType":"article"},"body":"# Extraction d’un commit dans GitHub Desktop\n\nVous pouvez utiliser GitHub Desktop pour extraire un précédent commit dans votre référentiel.\n\n## À propos du retrait d’un commit\n\nConsulter un commit vous permet d’afficher votre référentiel dans un état précédent sans avoir à créer une nouvelle branche ou modifier une branche existante. Cela peut être utile lors du débogage, car il vous permet de constater l’existence d’un bogue dans votre référentiel lors d’un précédent commit.\n\nL’extraction d’un commit place votre dépôt dans un état de « HEAD détachée ». Dans la terminologie Git, « HEAD » est la référence qui pointe vers l’extrémité, ou le dernier commit, d’une branche nommée dans votre dépôt. Un état « HEAD détaché » signifie que HEAD fait référence à un commit spécifique, mais pas sur une branche nommée dans votre référentiel.\n\n> \\[!NOTE]\n> Tout commit effectué dans un état « HEAD détaché » sera perdu lors du changement de branche, puisque ces commits n'ont pas été effectués sur une branche nommée. Si vous avez besoin de récupérer les commits perdus, consultez [Résolution des problèmes](#troubleshooting).\n\n## Validation d’un commit\n\n1. Dans la barre latérale gauche, cliquez sur **Histoire**.\n\n   ![Capture d’écran de l’onglet « Historique » dans la barre latérale. Au-dessus d’une liste de validations, le bouton d’onglet, intitulé « Historique » est mis en évidence avec un contour orange.](/assets/images/help/desktop/history-tab-in-commit-sidebar.png)\n2. Cliquez avec le bouton droit sur le commit que vous souhaitez extraire, puis sélectionnez **Extraction d’un commit**.\n\n![Capture d’écran d’une liste de commits dans l’onglet « Historique ». À côté d’un commit, dans un menu contextuel, l’option « Extraction d’un commit » est mise en évidence en orange.](/assets/images/help/desktop/checkout-commit.png)\n\n1. L’\\*\\* <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-git-branch\" aria-label=\"git-branch\" role=\"img\"><path d=\"M9.5 3.25a2.25 2.25 0 1 1 3 2.122V6A2.5 2.5 0 0 1 10 8.5H6a1 1 0 0 0-1 1v1.128a2.251 2.251 0 1 1-1.5 0V5.372a2.25 2.25 0 1 1 1.5 0v1.836A2.493 2.493 0 0 1 6 7h4a1 1 0 0 0 1-1v-.628A2.25 2.25 0 0 1 9.5 3.25Zm-6 0a.75.75 0 1 0 1.5 0 .75.75 0 0 0-1.5 0Zm8.25-.75a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5ZM4.25 12a.75.75 0 1 0 0 1.5.75.75 0 0 0 0-1.5Z\"></path></svg> Branche actuelle \\*\\* dans la barre de référentiel affiche désormais « HEAD détaché », ainsi que la SHA du commit extrait. ![Capture d’écran de la barre du dépôt. L’élément « Current Branch » affiche un état de « HEAD détachée » et est mis en évidence par un contour orange.](/assets/images/help/desktop/branch-item.png)\n2. Pour quitter l’état « HEAD détaché », vous devez changer de branche. Pour plus d’informations, consultez « [Gestion des branches dans GitHub Desktop](/fr/desktop/making-changes-in-a-branch/managing-branches-in-github-desktop#switching-between-branches) ».\n\n## Dépannage\n\nVous pouvez récupérer des commits qui ont été effectués dans un état « HEAD détaché » à l’aide de la commande `git reflog` à partir de la ligne de commande Git. Vous pouvez ouvrir votre référentiel dans la ligne de commande à partir de GitHub Desktop en accédant à la barre de menus, en sélectionnant **Référentiel**, puis en cliquant sur **Ouvrir dans la ligne de commande**.\n\nLa commande `git reflog` affiche la sortie des événements qui ont eu lieu dans votre référentiel, y compris les commits. Voici un exemple de production de la commande `git reflog` :\n\n```shell\n81fa9136f8 (HEAD -> main) HEAD@{0}: checkout: moving from 8bd5e736a27a52a7e36a856b30e6f0582d341aa1 to main\n8bd5e736a2 HEAD@{1}: commit: testing out a feature\n22fa76c125 HEAD@{2}: checkout: moving from main to 22fa76c1250a2847305b9325752d941dbaa55983\n```\n\nLa ligne `8bd5e736a2 HEAD@{1}: commit: testing out a feature` est le commit que nous voulons récupérer, car il a été effectué pendant que le référentiel était dans un état « HEAD détaché ». Pour le récupérer, vous pouvez exécuter `git cherry-pick 8bd5e736a2` afin d’appliquer le commit à la branche actuelle dans votre référentiel.\n\n## Pour aller plus loin\n\n* [HEAD détaché](https://git-scm.com/docs/git-checkout#_detached_head) dans la documentation Git\n* ```\n            [git-cherry-pick](https://git-scm.com/docs/git-cherry-pick) dans la documentation de Git\n  ```"}