Типовые задачи, которые вы научитесь решать на курсе:
- Создание коммита
- Отправка изменений на удалённый репозиторий
- Получение изменений с удалённого репозитория
- Создание и переключение веток
- Слияние веток на уровне локального и удалённого репозитория
- Разрешение конфликтов при слиянии веток
- Сравнение различных версий программного кода
- Сравнение файлов вне репозитория
- Отмена и откладывание изменений
- Перенос и создание точной копии коммитов
Введение в системы управления версиями
Рассмотрим, что такое системы управления версиями, какими они бывают и зачем нужны. Познакомимся с популярными VCS и начнём работать с Git.
— Зачем нужна система управления версиями
— Архитектуры VCS
— Популярные VCS
— Почему Git популярен
Установка Git
— Устанавливаем Git на Windows
— Устанавливаем Git на Linux
— Устанавливаем Git на MacOS
Первоначальная настройка Git
— Типы конфигурации Git
Практика
— Задание: первоначальная настройка
— Решение: первоначальная настройка
— Тест по первому разделу
Раздел 2
Работа с локальным и удалённым репозиторием
Научимся создавать локальный и удалённый репозиторий. После этого узнаем, как их связать между собой. Дополнительно научимся создавать коммиты и отправлять изменения на удалённый репозиторий, а также вносить изменения на удалённом репозитории и затягивать их в локальный.
— Демо: создаём локальный репозиторий
— Задание: создайте локальный репозиторий
— Решение: создайте локальный репозиторий
Работа с удалённым репозиторием
— Демо: создаём удалённый репозиторий
— Задание: создайте удалённый репозиторий
— Решение: создайте удалённый репозиторий
Связывание локального и удалённого репозитория
— Демо: связываем локальный и удалённый репозиторий
— Задание: свяжите локальный и удалённый репозиторий
— Решение: свяжите локальный и удалённый репозиторий
Внесение изменений в локальный репозиторий
— Демо: вносим изменения в локальном репозитории
— Задание: внесите изменения в локальный репозиторий
— Решение: внесите изменения в локальный репозиторий
Внесение изменений в удалённый репозиторий
— Демо: вносим изменения в удалённый репозиторий
— Задание: внесите изменения в удалённый репозиторий
— Решение: внесите изменения в удалённый репозиторий
— Демо: разрешаем конфликт при затягивании изменений
— Жизненный цикл файлов в репозитории
Раздел 3
Работа с ветками
Посмотрим, как создавать, переключать и удалять ветки. Также разберём такие немаловажные кейсы, как слияние веток и разрешение конфликтов при слиянии. Дополнительно рассмотрим, как переносить коммиты и делать их точные копии.
— Для чего нужны ветки
Создание и переключение веток
— Демо: создаём и переключаем ветки
— Задание: создайте новую ветку
— Решение: создайте новую ветку
Отправка ветки в удалённый репозиторий
— Демо: отправляем ветку в удалённый репозиторий
— Задание: отправьте ветку в удалённый репозиторий
— Решение:
—
Слияние веток
— Зачем нужно слияние веток
—
— Демо: объединяем ветки
— Задание:
— Кейс:
Разрешение конфликтов при слиянии веток
— Демо: разрешаем конфликт при слиянии веток
— Задание: разрешите конфликт при слиянии веток
— Решение: разрешите конфликт при слиянии веток
Перебазирование коммитов
— Введение в перебазирование
— Демо: перебазируем коммиты
— Задание:
— Решение:
Раздел 4
Просмотр изменений
Узнаем, как просматривать незакоммиченные изменения в одном и нескольких файлах в пределах одного проекта. Разберём, как сравнивать коммиты, ветки и разные файлы, находящиеся вне репозитория. В добавок ко всему затронем тему, связанную с указателями. Разберёмся, для чего они нужны и как их использовать.
Работа с указателями
— Введение в указатели
— Демо: перемещаем указатель
— Задание:
— Решение:
Просмотр изменений
— Демо: просматриваем изменения
— Задание: просмотрите изменения
— Решение:
— Тест по четвёртому разделу
Раздел 5
Откладывание изменений
Научимся откладывать изменения, а также узнаем, для чего это нужно и в каких ситуациях используется. Дополнительно разберём, как просматривать, комментировать и удалять отложенные изменения.
— Демо: откладываем изменения
Проверка знаний
— Тест по откладыванию изменений
Практика
— Задание: отложите и верните изменение
— Решение:
— Задание: отложите и просмотрите изменение
— Решение: отложите и просмотрите изменение
— Задание: отложите и удалите изменения
— Решение: отложите и удалите изменения
Раздел 6
Отмена изменений
Разберём, как отменять незакоммиченные и закоммиченные изменения. Также рассмотрим, как перестать отслеживать файлы. Дополнительно узнаем, как отменять успешное слияние и слияние с конфликтом.
Отмена незакоммиченных изменений
— Демо: отменяем незакоммиченные изменения
— Задание:
— Решение:
— Задание: отмените изменение, добавленное в индекс
— Решение: отмените изменение, добавленное в индекс
Отмена закоммиченных изменений
— Демо: отменяем закоммиченные изменения
— Задание: отмените закоммиченное изменение
— Решение:
Игнорирование файлов и директорий
— Демо: игнорируем файлы и директории
— Демо: удаляем файл из отслеживания
— Задание: удалите файл из отслеживания
— Решение: удалите файл из отслеживания
— Демо: отменяем успешное слияние
— Демо: отменяем слияние с конфликтом
— Задание: отмените успешное слияние
— Решение: отмените успешное слияние
— Тест по шестому разделу
Раздел 7
Итоговый
Подведём итоги курса и закрепим полученные знания. Также дадим советы, которые помогут вам при работе с Git.
Раздел 8
Бонусный
Этот раздел необязателен для прохождения, но если его пройти, вы получите дополнительные знания, которые пригодятся при работе с Git. Особое внимание в нём уделено SSH-подключению, а также команде git reflog, которая откатывает без последствий любую операцию, даже слияние.
— Демо: загружаем изменения из удалённого репозитория
— Демо: используем журнал Git для отмены операций
— Демо: создаём полноценную копию чужого репозитория
— Демо: настраиваем подключение по SSH
— Демо: настраиваем GPG для подписания коммитов
— Расшифровка статусов Git
— Демо: работаем с Git в редакторе кода VS Code
— Демо: работаем с Git в приложении GitHub Desktop
— Демо: базовые команды для терминала
— Демо: размещаем проект на GitHub Pages
Дополнительные материалы
— Основная документация
— Шпаргалка с часто используемыми командами
— Интересные книги по системам управления версиями
— Как облегчить жизнь при использовании Git.