10 уроков
🌿

Git и работа в команде

Коммиты, ветки и ревью — без страха что-то сломать

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

Задание ниже на этой же странице. Ничего заполнять не нужно.

10уроков с домашней работой к каждому
123задания с проверкой в браузере
0 ₽платных тарифов на платформе нет
7 часастолько уходит на уровень
Первый урок · без регистрации Урок 1 · «Зачем контроль версий» — с него начинается курс 2 минуты

Папка «финал_2_точно»

Почти каждый, кто писал код или длинный документ, видел такую папку: «проект», «проект_новый», «проект_финал», «проект_финал_2_точно». Через неделю никто не помнит, чем они отличаются, какая из них рабочая и что было сломано в той, которую удалили.

Система контроля версий решает ровно эту задачу — только аккуратно и автоматически. Она даёт четыре вещи:

  • историю — каждое сохранённое состояние проекта, по порядку, с датой и автором;
  • откат — вернуть файл или весь проект к любому прошлому состоянию;
  • параллельную работу — несколько человек меняют один проект и не затирают друг друга;
  • ответ на вопрос «зачем» — к каждому изменению приложено сообщение, почему его сделали.

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

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

Весь урок целиком →

Задание из урока 2

Какая команда покажет, что войдёт в коммит?

  • Карту не спрашиваем ни на каком шаге
  • Прогресс хранится в аккаунте — с телефона и с компьютера одинаково
  • Через 2, 7 и 30 дней курс сам вернёт задания, чтобы выученное не забылось
  • Письма — только о ваших занятиях, отписка одной кнопкой
Программа курса 1 уровень · 10 уроков · контрольная уровня с сертификатом

Программа

Уровень 1 — история, ветки и команда 10 уроков · контрольная на 26 заданий
01
Зачем контроль версий

Понимать, что даёт система контроля версий, как Git хранит историю снимками-коммитами, чем Git отличается от сервисов для репозиториев и на каких трёх правилах держится курс.

около 19 минут · домашняя работа
02
Репозиторий, коммит, статус

Создавать и копировать репозиторий, понимать три места изменения — рабочую папку, индекс и историю, — читать git status, смотреть изменения git diff и собирать коммит только из нужного.

около 20 минут · домашняя работа
03
Хороший коммит

Делать коммиты по одному законченному изменению, писать сообщение из первой строки «что» и пояснения «зачем», вести .gitignore и не пускать в историю секреты и большие файлы.

около 19 минут · домашняя работа
04
История и откат

Читать историю — log, show, diff между коммитами, blame — и выбирать откат по тому, где лежит правка: restore для несохранённого, revert для отправленного, reset и --amend только для своего неотправленного.

около 21 минуты · домашняя работа
05
Ветки

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

около 19 минут · домашняя работа
06
Слияние и конфликты

Сливать ветки, различать перемотку вперёд и коммит слияния, читать метки конфликта и разбирать его, отменять слияние, обновлять ветку merge или rebase и понимать, что слияние без конфликтов ещё не гарантирует работу.

около 20 минут · домашняя работа
07
Удалённый репозиторий

Понимать удалённый репозиторий origin и разницу между main и origin/main, забирать изменения fetch и pull, отправлять push и разбираться с отказом, не пользоваться --force в общей ветке и держать рабочий ритм обмена.

около 20 минут · домашняя работа
08
Пулл-реквест и ревью

Открывать пулл-реквест с одной задачей, небольшим размером и описанием «что, зачем, как проверить, чего нет»; проходить ревью как автор и проводить как ревьюер; читать автоматические проверки и вливать одобренное выбранным способом.

около 19 минут · домашняя работа
09
Командные правила

Понимать защиту main, выбирать простое устройство веток и отмечать выпуски тегами, держать договорённости команды в репозитории, автоматизировать проверяемое и менять неудобные правила, а не обходить их.

около 19 минут · домашняя работа
10
Беды и спасение

Не паниковать и находить «пропавшие» коммиты через reflog; исправлять коммиты не в той ветке и detached HEAD; откладывать правки stash и склеивать свои неотправленные коммиты; действовать при утечке секрета, неудачном слиянии и удалённом файле.

около 20 минут · домашняя работа
Кому как объяснять тема одна, различаются примеры и язык

Начало урока «Зачем контроль версий» — нажмите подачу и посмотрите, как это написано для вас

Базовая подача Так урок написан для всех, пока подача не выбрана.

Почти каждый, кто писал код или длинный документ, видел такую папку: «проект», «проект_новый», «проект_финал», «проект_финал_2_точно». Через неделю никто не помнит, чем они отличаются, какая из них рабочая и что было сломано в той, которую удалили.

Как устроен урок. Урок — одна страница: главы подряд, внутри них встроенная практика, в конце итог и домашняя работа. Порог 70%, пересдача через сутки новым набором.

Сертификат. За сданную контрольную уровня — именной, с кодом проверки подлинности; от 95% с отличием.

Пересдача и возвращения. Домашнюю можно пересдать через сутки другим набором, а через два дня, неделю и месяц курс сам предложит четыре коротких задания из того же урока.

Частые вопросы
Сколько занимает курс «Git и работа в команде»?

Уровень 1 — это 10 уроков примерно на 7 часа вместе с домашними работами и контрольной. Заниматься можно в любом темпе: прогресс сохраняется.

Нужно ли платить?

Нет. Все курсы платформы бесплатны, платных тарифов нет вовсе. Регистрация нужна только для того, чтобы сохранялся прогресс.

С чего начать, если я ничего не знаю о теме?

С первого уровня: он написан с нуля и не требует подготовки. Уровни — это глубина, а не точка входа: второй продолжает первый без повторов.

Что такое подача и какую выбрать?

Подача меняет примеры и язык объяснения, а не тему урока: Начинающий разработчик, Работаю в команде, Не программист. Выбрать можно при первом заходе и сменить в любой момент.

Как проверяются задания?

Каждое задание проверяет сервер: ответы не хранятся в браузере, а разбор приходит после ответа. Домашняя работа — 7 заданий из банка, порог 70%, пересдача через сутки новым набором.

Есть ли сертификат?

Да. За сданную контрольную уровня выдаётся именной сертификат с кодом проверки подлинности; от 95% — с отличием. Проверить код может любой на странице /check.

Дальше — весь курс с сохранением прогресса

Регистрацию можно отложить: первые уроки открыты целиком, а прогресс появится, как только заведёте аккаунт.

Зарегистрироваться