Понимание и решение проблемы отсоединенной головы Git

Ponimanie I Resenie Problemy Otsoedinennoj Golovy Git



В Git Bash HEAD — это ветка, в которой работает разработчик. Как профессиональный пользователь Git Bash, вы, возможно, слышали о состоянии отсоединенного HEAD. Некоторые пользователи на самом деле находят это состояние тревожным, это просто означает, что ваш HEAD указывает на конкретный коммит, а не на ветку.

Это руководство содержит информацию о глубоком понимании обычных состояний отсоединенного HEAD и решениях для устранения отсоединенного HEAD, включая следующий контент:

Что такое нормальное состояние HEAD в Git?

Обычное состояние HEAD в Git — это когда ваш HEAD указывает на текущую ветку. Когда пользователь переключается между разными ветками, HEAD также переключается на эту ветку. Ознакомьтесь со следующими шагами для практической демонстрации.







Шаг 1. Отображение статуса журнала
Откройте Git Bash и отобразите журнал проекта, используя команду «git-журнал» команда:



журнал git



В настоящее время наш РУКОВОДИТЕЛЬ указывает на « владелец ' ветвь.





Шаг 2. Переключите ветку
Теперь переключитесь на другую локальную ветвь и проверьте положение указателя HEAD. Например, мы проверяем « особенность ' ветвь:

git проверка особенность



Филиал переведен на « особенность ».

Шаг 3. Проверьте журнал
Снова просмотрите состояние журнала репозитория и проверьте состояние HEAD для проверки:

журнал git

Согласно следующему выводу, наш HEAD теперь указывает на ветку «feature»:

Итак, это обычный сценарий HEAD в Git Bash.

Что означает состояние оторванной головы?

Как мы упоминали выше, состояние отсоединенного HEAD возникает, когда HEAD указывает на фиксацию, а не на ветку. Когда вы переключаетесь на последний коммит, ваш HEAD будет указывать на него, и это состояние отсоединенного HEAD. Для лучшего понимания ознакомьтесь с практическим руководством.

Шаг 1. Проверьте состояние головки
Сначала отобразите журнал, чтобы просмотреть состояние HEAD, выполнив эту команду в Git Bash:

журнал git --В сети

В настоящее время HEAD указывает на « особенность ' ветвь.

Шаг 2. Оформление коммита
Давайте переключим HEAD на последний коммит, используя следующую команду вместе с хешем SHA:

git проверка b8d840c

Вы увидите, что при переключении на фиксацию вместо ветки появляется состояние отсоединенного HEAD.

Шаг 3. Еще раз проверьте состояние головки
Теперь, если вы отобразите журнал для проверки состояния HEAD, вы увидите, что он указывает на фиксацию:

журнал git --В сети

Вот состояние Git с отсоединенным HEAD.

Какие ситуации создают отдельные состояния HEAD?

Есть две ситуации, в которых можно увидеть состояние отсоединенного HEAD, см. таблицу ниже:

Ситуация 1 Когда пользователь переключается на фиксацию хеша SHA вместо ветки.
Ситуация 2 Когда пользователь переключается на удаленную ветку перед ее получением.

Как решить проблемы с отключением HEAD в Git?

Теперь давайте посмотрим, как можно решить проблему отсоединенного HEAD. Это довольно просто решить: просто создайте новую ветку, переключитесь на нее и зафиксируйте изменения. Чтобы просмотреть это на практике, ознакомьтесь с данной инструкцией.

Шаг 1. Создайте новую ветку
Сначала создайте новую ветку через «ветвь git» команда:

git ветка новый

Шаг 2: переключитесь на созданную ветку
После этого переключитесь на него через «git переключатель» команду и введите имя ветки:

мерзавец переключить новый

Шаг 3: Зафиксируйте изменения
Зафиксируйте внесенные изменения и укажите сообщение, используя « м ' ярлык:

git совершить коммит 'ветвь переключена'

Шаг 4. Проверьте журнал
Теперь проверьте состояние HEAD, отобразив журнал:

журнал git

Вот как вы можете разрешить состояние отсоединенного HEAD.

Заключение

Состояние отсоединенного HEAD в Git появлялось, когда HEAD указывал на фиксацию, а не на ветку. Чтобы решить эту проблему, просто создайте новую ветку, переключитесь на нее и зафиксируйте изменения. Вы подробно узнали о проблемах с отключенным HEAD в Git.