Курс на Stepik
Обложка курса «Продвинутый Git» на Stepik
1 000 ₽

Продвинутый Git ★ 5.000

Открыть на
STEPIK.ORG

Курс «Продвинутый Git» — это практическое путешествие по миру веток, истории, merge-конфликтов и оптимизации репозиториев. Обучение построено в формате квестов, где каждая миссия — реальная ситуация из жизни разработчиков. Вы научитесь уверенно управлять историей, чистить репозиторий, работать с Git hooks, LFS, submodules и CI/CD. После курса вы будете владеть Git на уровне инженера DevOps и тимлида. 🚀

Показатель Текущие показатели Рост
Значение 🏆 Рейтинг 3 дн 7 дн 30 дн
Количество учеников на курсе «Продвинутый Git»Учеников на курсе 4
Сертификаты, выданные на курсе «Продвинутый Git»Сертификатов выдано 4
Отзывы о курсе «Продвинутый Git»Отзывов получено 1
Рейтинг курса «Продвинутый Git»Рейтинг курса 5.000
Уроки в курсе «Продвинутый Git»Количество уроков 96
Тесты в курсе «Продвинутый Git»Количество квизов 1562
Стоимость курса «Продвинутый Git»Стоимость курса 1 000 ₽ —
Обновления курса «Продвинутый Git»Обновления курса — —
Дата публикации курса «Продвинутый Git»Дата публикации курса — ———
Последнее обновление курса «Продвинутый Git»Последнее обновление — ———
Сложность normal — ———

Содержание курса

Разделы в курсе «Продвинутый Git» 24 раздела Уроки в курсе «Продвинутый Git» 96 уроков Тесты в курсе «Продвинутый Git» 1562 теста Последнее обновление курса «Продвинутый Git» обн. 1 год назад

Как Git хранит данные

4 урока
1. Объекты Git: blob, tree, commit, tag ↗
2. SHA1-хеши и уникальность коммитов ↗
3. Практика: просмотр объектов через git cat-file ↗
4. Git как key-value store ↗

Индекс и staging area

4 урока
1. Рабочая директория, индекс и репозиторий ↗
2. Практика: добавление и удаление файлов ↗
3. Staging и unstaging файлов ↗
4. Проверка staged и unstaged изменений ↗

Коммиты и ссылки

4 урока
1. Создание коммитов и роль HEAD ↗
2. Ветки и указатели в Git ↗
3. Просмотр истории коммитов ↗
4. Работа с логом и графами ↗

Управление ветками

4 урока
1. Создание, удаление и переименование веток ↗
2. Переключение и checkout веток ↗
3. Merge и fast-forward ↗
4. Практика: слияние разных веток ↗

Стратегии работы с Git

4 урока
1. Git-flow: обзор и практика ↗
2. Trunk-based development ↗
3. Практика: feature branch и merge в main ↗
4. Workflow для командной разработки ↗

Управление коммитами

4 урока
1. Cherry-pick: выборочные коммиты ↗
2. Revert: откат коммита без потери истории ↗
3. Reset: мягкий, смешанный, жёсткий ↗
4. Практика: восстановление после reset ↗

Rebase и переписывание истории

4 урока
1. Merge и rebase: различия ↗
2. Interactive rebase: squash и fixup ↗
3. Изменение сообщений коммитов ↗
4. Практика: чистая история ↗

Squash и оптимизация истории

4 урока
1. Объединение нескольких коммитов ↗
2. Fixup и autosquash ↗
3. Практика: очистка истории feature ветки ↗
4. Поддержание линейной истории ↗

Восстановление истории

4 урока
1. Reflog и его возможности ↗
2. Восстановление удалённых коммитов ↗
3. Reset и checkout для отката ↗
4. Практика: вернуть удалённую ветку ↗

Работа с удалёнными репозиториями

4 урока
1. Push, pull, fetch — различия ↗
2. Upstream и tracking ветки ↗
3. Практика: синхронизация веток ↗
4. Работа с несколькими remotes ↗

Совместная разработка

4 урока
1. Fork и работа с форками ↗
2. Pull Request и code review ↗
3. Практика: создание PR ↗
4. Обработка комментариев ревью ↗

Конфликты и их решение

4 урока
1. Merge conflicts при слиянии ↗
2. Конфликты при pull и push ↗
3. Практика: симуляция конфликта ↗
4. Решение сложных конфликтов ↗

Git hooks

4 урока
1. pre-commit, pre-push, post-merge ↗
2. Настройка простых хуков ↗
3. Практика: линтер через hook ↗
4. Автоматизация тестов через hook ↗

Конфигурация и alias

4 урока
1. Глобальная и локальная конфигурация ↗
2. Настройка сокращений команд ↗
3. Полезные alias для повседневной работы ↗
4. Практика: ускорение работы через alias ↗

Git в CI/CD

4 урока
1. Git в пайплайнах CI ↗
2. Автоматизация через GitHub Actions ↗
3. Практика: простой pipeline ↗
4. Стратегии версионирования в CI ↗

Практикум: сложные конфликты

4 урока
1. Смоделировать конфликт веток ↗
2. Решить конфликт и завершить merge ↗
3. Практика: rebase с конфликтами ↗
4. Итоги: лучший подход к конфликтам ↗

Продвинутый rebase

4 урока
1. Изменение сообщений в истории ↗
2. Перестановка коммитов ↗
3. Практика: squash и fixup ↗
4. Поддержание читаемой истории ↗

Восстановление удалённых веток

4 урока
1. Reflog для поиска потерянных веток ↗
2. Reset и checkout для возврата ↗
3. Практика: восстановление ветки ↗
4. Ошибки при восстановлении и их решение ↗

Автоматизация через Git hooks

4 урока
1. pre-commit для линтинга и тестов ↗
2. pre-push для проверки формата ↗
3. Практика: свой hook на Go или Python ↗
4. Интеграция hooks с CI ↗

Submodules и Subtree

4 урока
1. Что такое submodule и зачем нужен ↗
2. Добавление и обновление submodules ↗
3. Subtree: альтернатива submodules ↗
4. Практика: работа с зависимыми репозиториями ↗

Git LFS

4 урока
1. Проблема больших файлов в Git ↗
2. Подключение Git LFS ↗
3. Отслеживание и хранение бинарных файлов ↗
4. Практика: работа с медиаконтентом ↗

Подписи и безопасность

4 урока
1. GPG-подписи коммитов и тегов ↗
2. Проверка подписанных коммитов ↗
3. Настройка trust chain ↗
4. Практика: работа с подписанными релизами ↗

Теги и релизы

4 урока
1. Лёгкие и аннотированные теги ↗
2. Семантическое версионирование ↗
3. Практика: создание релизов ↗
4. Работа с тегами в CI/CD ↗

Оптимизация и чистка репозитория

4 урока
1. Git gc, prune, repack ↗
2. Очистка больших файлов из истории ↗
3. Практика: ускорение старого репозитория ↗
4. Поддержание производительности ↗