Sobre o check-out de um commit
O check-out de um commit permite exibir seu repositório em um estado anterior sem precisar criar um novo branch ou modificar um branch existente. Isso pode ser útil durante a depuração, pois permite que você veja se existe algum bug em seu repositório em um commit anterior.
O check-out de um commit coloca seu repositório em um estado "HEAD desanexado". Na terminologia Git, "HEAD" é a referência que aponta para a dica, ou commit mais recente, de um branch nomeado em seu repositório. Um estado "HEAD desanexado" significa que HEAD se refere a um commit específico, mas não a um branch nomeado em seu repositório.
Observação
Quaisquer commits realizados no estado "HEAD desassociado" serão perdidos ao mudar de branch, uma vez que esses commits não foram realizados em um branch nomeado. Se precisar recuperar os commits perdidos, confira Solução de problemas.
Fazer check-out de um commit
-
Na barra lateral esquerda, clique em Histórico.

-
Clique com o botão direito do mouse no commit de que você gostaria de fazer check-out e selecione Fazer check-out do commit.
 -
O item Current Branch na barra do repositório agora mostrará "HEAD desanexado", junto com o SHA do commit do qual foi feito check-out.

-
Para sair do estado "HEAD desanexado", você precisará alternar branches. Para saber mais, confira Gerenciar branches no GitHub Desktop.
Solução de problemas
Você pode recuperar os commits que foram feitos em um estado "HEAD desacoplado" usando o comando git reflog da linha de comando do Git. Você pode abrir seu repositório na linha de comando de GitHub Desktop acessando a barra de menus, selecionando Repositório e clicando em Abrir na linha de comando.
O comando git reflog exibirá a saída dos eventos que aconteceram em seu repositório, incluindo commits. A seguir uma saída de amostra do comando git reflog:
81fa9136f8 (HEAD -> main) HEAD@{0}: checkout: moving from 8bd5e736a27a52a7e36a856b30e6f0582d341aa1 to main
8bd5e736a2 HEAD@{1}: commit: testing out a feature
22fa76c125 HEAD@{2}: checkout: moving from main to 22fa76c1250a2847305b9325752d941dbaa55983
A linha 8bd5e736a2 HEAD@{1}: commit: testing out a feature é o commit que queremos recuperar, já que foi feito enquanto o repositório estava em um estado "HEAD desanexado". Para recuperá-lo, você pode executar git cherry-pick 8bd5e736a2 para aplicar o commit à ramificação atual no seu repositório.
Leitura adicional
-
[HEAD desanexado](https://git-scm.com/docs/git-checkout#_detached_head) na documentação do Git -
[Git cherry-pick](https://git-scm.com/docs/git-cherry-pick) na documentação do Git