Compreendendo e resolvendo o problema do Git Detached Head

Compreendendo E Resolvendo O Problema Do Git Detached Head



No Git Bash, HEAD é o branch onde o desenvolvedor trabalha. Como usuário profissional do Git Bash, você deve ter ouvido falar sobre o estado HEAD desanexado. Alguns usuários acham essa condição alarmante, na verdade, significa apenas que seu HEAD está apontando para o commit específico em vez do branch.

Este guia contém conteúdo sobre a compreensão profunda dos estados normais do HEAD desanexado e soluções para resolver o HEAD desanexado, incluindo o seguinte conteúdo:

Qual é o estado normal do HEAD no Git?

O estado HEAD normal no Git é onde seu HEAD está apontando para o branch atual. Quando o usuário alterna entre diferentes ramificações, o HEAD também é alternado para essa ramificação. Confira as etapas a seguir para demonstração prática.







Etapa 1: Exibir status do registro
Abra o Git Bash e exiba o log do projeto usando o “gitlog” comando:



registro do git



Atualmente, nosso HEAD está apontando para o “ mestre ' filial.





Etapa 2: mudar de filial
Agora, mude para outra ramificação local e verifique a posição do ponteiro HEAD. Por exemplo, estamos verificando o “ recurso ' filial:

finalizar a compra recurso



A filial foi alterada para “ recurso ”.

Etapa 3: verificar o registro
Visualize o status do log do repositório novamente e verifique o estado HEAD para verificação:

registro do git

De acordo com a saída a seguir, nosso HEAD agora está apontando para o branch “feature”:

Então, este é o cenário HEAD normal no Git Bash.

O que significa estado de cabeça destacada?

Como mencionamos acima, um estado HEAD desanexado ocorre quando o HEAD está apontando para o commit em vez do branch. Quando você muda para o commit mais recente, seu HEAD apontará para o commit, e este é o estado HEAD desanexado. Para melhor compreensão, consulte o manual prático.

Etapa 1: verificar o status do cabeçote
Primeiro, exiba o log para visualizar o estado HEAD executando este comando no Git Bash:

registro do git --on-line

Atualmente, HEAD está apontando para o “ recurso ' filial.

Etapa 2: verificar o commit
Vamos mudar HEAD para o commit mais recente usando o seguinte comando junto com o hash SHA:

finalizar a compra b8d840c

Você verá que o estado HEAD desanexado aparece ao mudar para o commit em vez do branch.

Etapa 3: verifique o status do cabeçote novamente
Agora, se você exibir o log para verificar o estado do HEAD, verá que ele está apontando para o commit:

registro do git --on-line

Aqui está o estado HEAD desanexado do Git.

Que situações criam estados HEAD desanexados?

Existem duas situações em que um estado HEAD desanexado pode ser visto, confira a tabela abaixo:

Situação 1 Quando o usuário muda para o commit de hash SHA em vez do branch.
Situação 2 Quando o usuário muda para o branch remoto antes de buscá-lo.

Como resolver problemas de HEAD desanexado do Git?

Agora, vamos ver como você pode resolver o problema do HEAD desanexado. É bem simples de resolver, basta criar um novo branch, mudar para ele e submeter as alterações. Para visualizá-lo na prática confira as instruções fornecidas.

Etapa 1: crie uma nova filial
Primeiro, crie o novo branch através do “ramo git” comando:

ramo git novo

Etapa 2: mude para o branch criado
Depois disso, mude para ele através do “troca git” comando e digite o nome da filial:

idiota mudar novo

Etapa 3: confirmar alterações
Confirme as alterações aplicadas e especifique a mensagem usando “ eu ' marcação:

git commit -m 'ramal trocada'

Etapa 4: verificar o registro
Agora, verifique o status do HEAD exibindo o log:

registro do git

É assim que você pode resolver o estado HEAD desanexado.

Conclusão

O estado HEAD desanexado do Git apareceu quando o HEAD estava apontando para o commit em vez do branch. Para resolver isso, basta criar um novo branch, mudar para ele e confirmar as alterações. Você aprendeu detalhadamente sobre problemas de HEAD desanexado no Git.