Часть I: Основы Git

Цели

  • Понять, что такое Git и чем он полезен.

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

Что такое Git?

Вы можете представить себе Git как «машину времени» для вашего кода. Он позволяет вам вернуться в прошлое и увидеть, как выглядел ваш код в определенный момент времени. Он также позволяет увидеть, кто и когда вносил те или иные изменения в код. Он даже позволяет отменять изменения, которые были внесены в ваш код ранее.

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

  • Это даст вам лучшее понимание того, как работает Git.
  • Это позволит вам использовать Git на любом компьютере, даже если на нем не установлены ваши любимые инструменты разработчика.
  • Это позволяет вам использовать Git на удаленном сервере, который не имеет графического пользовательского интерфейса.

Прежде чем мы начнем, давайте рассмотрим некоторые термины, которые мы будем использовать в этом курсе.

Терминология

Репозиторий

Репозиторий Git — это хранилище, в котором расположен ваш проект и его история. Это может быть локальное хранилище где-то на вашем компьютере или удаленное хранилище на сервисе типа GitHub или другом хостинге в Интернете. Репозиторий служит для отслеживания изменений в проекте, координации работы между несколькими людьми и отслеживания истории проекта.

Скажем, у вас на компьютере есть директория со всеми файлами вашего проекта. Когда вы инициализируете репозиторий Git в этой директории, Git создает скрытую поддиректорию под названием .git, в которой хранится вся информация о репозитории. Эта информация включает историю всех изменений, внесенных в репозиторий, а также его текущее состояние.

Скучный факт №1:** По умолчанию директория .git скрыта. Если вы хотите ее увидеть, убедитесь, что в вашем файловом менеджере включена опция показа скрытых файлов.

Коммит

Вы можете думать о коммите как о снимке вашего проекта в определенный момент времени. Правда, коммит содержит только информацию об изменениях, которые были внесены в репозиторий с момента последнего коммита. Он не содержит все файлы репозитория (если только это не первый коммит). Таким образом, каждый коммит — это небольшой кусочек истории репозитория, основанный на предыдущем коммите. Все они связаны между собой в цепочку, формируя историю изменений вашего проекта.

Ветка

Ветка — это параллельная версия репозитория. Ветки позволяют вам работать над отдельными функциями вашего проекта, не влияя на основную версию. Закончив работу над новой фичей, вы можете объединить эту ветку с основной версией проекта.

Скучный факт №2: В репозитории всегда есть по крайней мере одна ветка, даже если вы сами ее не создавали. Обычно ее называют веткой main (или master).


Теперь у вас есть базовое понимание того, что такое Git и как он работает. В следующем уроке мы наконец-то пощупаем команды Git своими руками.