Рабочий проект
Мы с вами разобрались как можно перескакивать в любую из версий нашего проекта, это действительно выглядит как скачек в прошлое, но было бы круто не только возвращаться в прошлое, но и менять будущее.
Давайте схематично распишем наши действия из прошлого урока. Мы сперва инициализировали git, затем создали первый коммит, а потом второй:
<aside> ☝
Если вы добавили в проект gitignore, то у вас будет 3 коммита.
</aside>
Когда вы инициализируете Git в проекте при помощи команды git init, он создает основную линию жизни вашего кода, которую называют "веткой”, на ней будут размещаться ваши узелки (коммиты). Обычно она носит название main
или master
, в моем случае main, вы можете это заметить в терминале:
Сперва название проекта, затем git и в круглых скобках название ветки.
Вот так вот наш проект живет себе свою лучшую линию жизни, а потом приходим мы и пытаемся вернуться в прошлое:
<aside> 💡 Напомню, что в прошлом уроке мы остановились на том что перешли на предыдущий коммит и столкнулись с состоянием "detached HEAD"
</aside>
Переход состоялся, но нас уведомили о том что мы здесь ничего не можем менять в этой точке, мы находимся в состоянии "detached HEAD".
Сперва давайте разберемся что же такое HEAD.
HEAD — это специальный указатель (ссылка) в Git, который указывает на текущий коммит или ветку, с которой вы в данный момент работаете. Обычно HEAD указывает на последний коммит в вашей текущей ветке. Он помогает отслеживать в какой точке разработки мы сейчас находимся.