Курс на Stepik
Обложка курса «Продвинутый Git» на Stepik
Бесплатно

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

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

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

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

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

Разделы в курсе «Продвинутый Git» 24 раздела Уроки в курсе «Продвинутый Git» 96 уроков Тесты в курсе «Продвинутый Git» 1562 теста Время прохождения курса «Продвинутый Git» 1 ч. Последнее обновление курса «Продвинутый Git» обн. 3 января 2026

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

4 урока
Открытый
1.1 Объекты Git: blob, tree, commit, tag
42
12
5м 37с
0
Открытый
1.2 SHA1-хеши и уникальность коммитов
16
11
5м 53с
0
Закрытый
1.3 Практика: просмотр объектов через git cat-file
10
9
1м 39с
0
Закрытый
1.4 Git как key-value store
9
9
-
0

2. Индекс и staging area

4 урока
Открытый
2.1 Рабочая директория, индекс и репозиторий
15
10
3м 39с
0
Закрытый
2.2 Практика: добавление и удаление файлов
9
8
-
0
Закрытый
2.3 Staging и unstaging файлов
9
8
-
0
Закрытый
2.4 Проверка staged и unstaged изменений
8
8
-
0

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

4 урока
Закрытый
3.1 Создание коммитов и роль HEAD
9
8
-
0
Закрытый
3.2 Ветки и указатели в Git
8
8
-
0
Закрытый
3.3 Просмотр истории коммитов
8
8
-
0
Закрытый
3.4 Работа с логом и графами
8
8
-
0

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

4 урока
Закрытый
4.1 Создание, удаление и переименование веток
8
7
-
0
Закрытый
4.2 Переключение и checkout веток
7
6
-
0
Закрытый
4.3 Merge и fast-forward
7
6
-
0
Закрытый
4.4 Практика: слияние разных веток
7
7
-
0

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

4 урока
Закрытый
5.1 Git-flow: обзор и практика
8
7
-
0
Закрытый
5.2 Trunk-based development
7
7
-
0
Закрытый
5.3 Практика: feature branch и merge в main
7
6
-
0
Закрытый
5.4 Workflow для командной разработки
6
6
-
0

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

4 урока
Закрытый
6.1 Cherry-pick: выборочные коммиты
6
6
-
0
Закрытый
6.2 Revert: откат коммита без потери истории
7
6
-
0
Закрытый
6.3 Reset: мягкий, смешанный, жёсткий
6
6
-
0
Закрытый
6.4 Практика: восстановление после reset
6
6
-
0

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

4 урока
Закрытый
7.1 Merge и rebase: различия
6
6
-
0
Закрытый
7.2 Interactive rebase: squash и fixup
6
6
-
0
Закрытый
7.3 Изменение сообщений коммитов
6
6
-
0
Закрытый
7.4 Практика: чистая история
6
6
-
0

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

4 урока
Закрытый
8.1 Объединение нескольких коммитов
6
6
-
0
Закрытый
8.2 Fixup и autosquash
6
6
-
0
Закрытый
8.3 Практика: очистка истории feature ветки
6
6
-
0
Закрытый
8.4 Поддержание линейной истории
7
6
-
0

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

4 урока
Закрытый
9.1 Reflog и его возможности
6
6
-
0
Закрытый
9.2 Восстановление удалённых коммитов
6
6
-
0
Закрытый
9.3 Reset и checkout для отката
6
6
-
0
Закрытый
9.4 Практика: вернуть удалённую ветку
6
6
-
0

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

4 урока
Закрытый
10.1 Push, pull, fetch — различия
6
6
-
0
Закрытый
10.2 Upstream и tracking ветки
6
6
-
0
Закрытый
10.3 Практика: синхронизация веток
6
6
-
0
Закрытый
10.4 Работа с несколькими remotes
6
6
-
0

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

4 урока
Закрытый
11.1 Fork и работа с форками
6
5
-
0
Закрытый
11.2 Pull Request и code review
5
5
-
0
Закрытый
11.3 Практика: создание PR
5
5
-
0
Закрытый
11.4 Обработка комментариев ревью
5
5
-
0

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

4 урока
Закрытый
12.1 Merge conflicts при слиянии
5
5
-
0
Закрытый
12.2 Конфликты при pull и push
5
5
-
0
Закрытый
12.3 Практика: симуляция конфликта
5
5
-
0
Закрытый
12.4 Решение сложных конфликтов
5
5
-
0

13. Git hooks

4 урока
Закрытый
13.1 pre-commit, pre-push, post-merge
5
5
-
0
Закрытый
13.2 Настройка простых хуков
5
5
-
0
Закрытый
13.3 Практика: линтер через hook
5
5
-
0
Закрытый
13.4 Автоматизация тестов через hook
5
5
-
0

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

4 урока
Закрытый
14.1 Глобальная и локальная конфигурация
5
5
-
0
Закрытый
14.2 Настройка сокращений команд
5
5
-
0
Закрытый
14.3 Полезные alias для повседневной работы
5
5
-
0
Закрытый
14.4 Практика: ускорение работы через alias
5
5
-
0

15. Git в CI/CD

4 урока
Закрытый
15.1 Git в пайплайнах CI
5
5
-
0
Закрытый
15.2 Автоматизация через GitHub Actions
5
5
-
0
Закрытый
15.3 Практика: простой pipeline
5
5
-
0
Закрытый
15.4 Стратегии версионирования в CI
5
5
-
0

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

4 урока
Закрытый
16.1 Смоделировать конфликт веток
5
5
-
0
Закрытый
16.2 Решить конфликт и завершить merge
5
5
-
0
Закрытый
16.3 Практика: rebase с конфликтами
5
5
-
0
Закрытый
16.4 Итоги: лучший подход к конфликтам
6
5
-
0

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

4 урока
Закрытый
17.1 Изменение сообщений в истории
6
5
-
0
Закрытый
17.2 Перестановка коммитов
5
5
-
0
Закрытый
17.3 Практика: squash и fixup
5
5
-
0
Закрытый
17.4 Поддержание читаемой истории
5
5
-
0

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

4 урока
Закрытый
18.1 Reflog для поиска потерянных веток
5
5
-
0
Закрытый
18.2 Reset и checkout для возврата
5
5
-
0
Закрытый
18.3 Практика: восстановление ветки
6
5
-
0
Закрытый
18.4 Ошибки при восстановлении и их решение
5
5
-
0

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

4 урока
Закрытый
19.1 pre-commit для линтинга и тестов
5
5
-
0
Закрытый
19.2 pre-push для проверки формата
5
5
-
0
Закрытый
19.3 Практика: свой hook на Go или Python
5
5
-
0
Закрытый
19.4 Интеграция hooks с CI
5
5
-
0

20. Submodules и Subtree

4 урока
Закрытый
20.1 Что такое submodule и зачем нужен
5
5
-
0
Закрытый
20.2 Добавление и обновление submodules
5
5
-
0
Закрытый
20.3 Subtree: альтернатива submodules
5
5
-
0
Закрытый
20.4 Практика: работа с зависимыми репозиториями
5
5
-
0

21. Git LFS

4 урока
Закрытый
21.1 Проблема больших файлов в Git
5
5
-
0
Закрытый
21.2 Подключение Git LFS
5
5
-
0
Закрытый
21.3 Отслеживание и хранение бинарных файлов
5
5
-
0
Закрытый
21.4 Практика: работа с медиаконтентом
5
5
-
0

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

4 урока
Закрытый
22.1 GPG-подписи коммитов и тегов
5
5
-
0
Закрытый
22.2 Проверка подписанных коммитов
5
5
-
0
Закрытый
22.3 Настройка trust chain
5
5
-
0
Закрытый
22.4 Практика: работа с подписанными релизами
5
5
-
0

23. Теги и релизы

4 урока
Закрытый
23.1 Лёгкие и аннотированные теги
5
5
-
0
Закрытый
23.2 Семантическое версионирование
5
5
-
0
Закрытый
23.3 Практика: создание релизов
5
5
-
0
Закрытый
23.4 Работа с тегами в CI/CD
5
5
-
0

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

4 урока
Закрытый
24.1 Git gc, prune, repack
5
5
-
0
Закрытый
24.2 Очистка больших файлов из истории
5
5
-
0
Закрытый
24.3 Практика: ускорение старого репозитория
5
5
-
0
Закрытый
24.4 Поддержание производительности
5
5
-
0