Git с нуля до уверенного разработчика

Освойте Git так, чтобы уверенно работать в команде, грамотно вести историю проекта и успешно проходить технические собеседования — от первого коммита до pull request'а в реальном репозитории.

13 лекций 5ч 42мин По подписке
Для кого курс
Начинающие программисты, которые уже пишут код на любом языке, но никогда серьёзно не работали с системой контроля версий или знают Git поверхностно и хотят привести знания в порядок перед выходом на рынок труда.
Требования
Базовые навыки работы с командной строкой: переход между папками, создание и удаление файлов. Умение писать простой код на любом языке — язык не важен, важен сам факт, что вы уже что-то программируете.

Программа курса

13 лекций
1
6 мин
Бесплатно Смотреть
Мы начнём не с команд, а с боли: посмотрим, как выглядит разработка без контроля версий — папки «проект_финал_2», «проект_финал_ТОЧНО_ФИНАЛ» и страх удалить лишнее. Вы поймёте, какую именно проблему решает Git, почему он стал стандартом индустрии и что конкретно работодатель проверяет, когда смотрит на ваш GitHub-профиль.
система контроля версий история изменений распределённая архитектура
22 мин
После рег. Просмотреть
Установим Git на Windows, macOS и Linux, разберём, почему конфигурация имени и email — это не формальность, а часть истории коммитов. Настроим удобный терминал и несколько полезных алиасов, чтобы с первого дня работать комфортно, а не мучиться с длинными командами.
установка Git git config глобальная конфигурация
18 мин
По подписке Просмотреть
Создаём первый репозиторий и сразу сталкиваемся с концепцией, которую многие не понимают годами — staging area (индекс). Мы разберём, зачем нужен этот «промежуточный слой» между рабочей папкой и историей, и увидим на примерах, почему именно двухшаговая система add → commit делает коммиты осмысленными, а не случайными.
репозиторий staging area коммит
28 мин
По подписке Просмотреть
История проекта — это не просто лог, это документация решений. Научимся читать историю информативно: фильтровать коммиты, смотреть, что именно изменилось между версиями, и понимать хеши SHA-1 без страха. Отдельно разберём, как отличить «хорошую историю» от «мусорной» — это напрямую влияет на то, как вас воспримут в команде.
хеш коммита git log git diff
25 мин
По подписке Просмотреть
Ветки — это сердце Git, и именно здесь большинство новичков начинают бояться. Мы демистифицируем ветки: покажем, что ветка — это просто указатель, а не копия файлов. Разберём, как создавать ветки, переключаться между ними и сливать изменения, а также увидим разницу между fast-forward и трёхсторонним слиянием на живых примерах.
ветка HEAD merge
32 мин
По подписке Просмотреть
Одна из самых востребованных тем на собеседованиях и в реальной работе — как отменить то, что уже сделано. Мы разберём три инструмента с разной «глубиной» отмены и сосредоточимся на самом важном: покажем конкретные сценарии, где reset --hard разрушает командную работу, а revert — безопасная альтернатива. Хорошие и плохие решения — с реальными последствиями.
git restore git reset git revert
30 мин
По подписке Просмотреть
Переходим от локальной работы к командной: разбираемся, что такое remote, как связать локальный репозиторий с GitHub и в чём разница между push, pull и fetch — три команды, которые путают чаще всего. Отдельно рассмотрим аутентификацию через SSH-ключи, потому что работодатели ожидают, что вы настроите это сами.
remote origin push / pull / fetch
27 мин
По подписке Просмотреть
Именно этот раздел описывает то, как работает 90% open-source и корпоративных команд. Мы пройдём полный цикл: fork → feature-ветка → коммиты → pull request → code review → merge. Отдельно разберём, как писать описание PR, чтобы ревьюер сразу понял контекст, и какие ошибки в PR сразу выдают новичка.
fork pull request code review
33 мин
По подписке Просмотреть
Конфликты пугают новичков, но после этого раздела вы будете встречать их спокойно. Разберём, почему конфликты возникают (Git не читает мысли — он не знает, чьё изменение важнее), как читать маркеры конфликта и как выбрать правильное решение. Покажем два подхода: ручное разрешение и использование merge-инструментов.
конфликт слияния маркеры конфликта разрешение конфликта
28 мин
По подписке Просмотреть
На собеседованиях часто спрашивают: «Какой Git-workflow вы использовали?» После этого раздела у вас будет честный и развёрнутый ответ. Рассмотрим три популярных подхода — Feature Branch Workflow, Git Flow и Trunk-Based Development — и разберём, где каждый из них работает хорошо, а где становится тормозом.
Feature Branch Workflow Git Flow Trunk-Based Development
23 мин
По подписке Просмотреть
Переходим к инструментам, которые отличают уверенного пользователя Git от того, кто знает только базу. Разберём rebase как альтернативу merge — покажем, когда он делает историю чище, а когда превращает её в кошмар. Добавим stash для быстрого «откладывания» незаконченной работы, cherry-pick для точечного переноса коммитов и теги для маркировки релизов.
git rebase git stash git cherry-pick
35 мин
По подписке Просмотреть
Применяем всё, что вы изучили, в связном сценарии: вы — разработчик в небольшой команде, которой нужно добавить новую фичу, исправить баг и выпустить релиз. Пошагово проходим полный цикл: создание репозитория, работа в ветках, pull request'ы, намеренно созданные конфликты и их разрешение, rebase для чистки истории и финальный релизный тег. В конце у вас на руках — реальный репозиторий, который можно показать работодателю.
полный Git-workflow командная разработка релизный цикл
35 мин
По подписке Просмотреть

Справочник по теме

База знаний →