Um colega meu acabou de passar por esta situação. No caso dele, havia commits no head destacado - eles funcionam no R-Studio-- e a ferramenta os avisou que eles poderiam criar o branch com esta e aquela referência SHA ... mas uma vez que a única opção era "Fechar" --duh !! era uma caixa de informações - eles fecharam o diálogo e perderam as informações para sempre ...
Graças ao reflogcomando pudemos ver que as mudanças não foram perdidas. Mas, em nosso caso, o git branchnão funcionou como esperado ... ou uma entrada git pullbagunçou de alguma forma. Tivemos que pescar as mudanças do reflog para o branch recém-criado:
git cherry-pick 0b823d42..3cce27fc
que colocou todos os commits que queríamos no branch. Então, poderíamos mesclar o branch developsem problemas.
Apenas no caso de ser informativo para alguém, identificamos os commits no head destacado no reflogolhando aqueles entre os marcados com "checkout" (que identificam deslocamento de ramificação):
e09f183b HEAD@{3}: pull: Fast-forward
b5bf3e1d HEAD@{4}: checkout: moving from lost_changes to develop
b5bf3e1d HEAD@{5}: checkout: moving from 3cce27fca50177a288df0252f02edd5da5ee64fd to lost_changes
3cce27fc HEAD@{6}: commit: add statistics
417a99a4 HEAD@{7}: commit: add test
0b823d42 HEAD@{8}: commit: new utility class
d9ea8a63 HEAD@{9}: checkout: moving from develop to d9ea8a635d4c2349fcb05b3339a6d7fad5ae2a09
b5bf3e1d HEAD@{10}: pull: Fast-forward
Aqueles que queria foram HEAD@{8}para HEAD@{6}(ambos inclusive). Então, nós os obtemos por:
git cherry-pick 0b823d42..3cce27fc
Então, a solução usual de mesclagem e o commit final nos deixaram com o branch lost_changes hospedando o trabalho destacado que pensávamos perdido. A fusão com o desenvolvimento foi um avanço rápido desta vez.