Изучай Git. Визуально. Интерактивно!
Learn Git Branching — интерактивный учебник, где вы осваиваете Git через визуальные уроки: ветки, слияния, ребейз — всё наглядно!
Merge или rebase — посмотрите разницу
Нажимайте команды и следите за графом. Кнопка, которую сейчас применить нельзя, гаснет и объясняет почему — это половина обучения Git.
Живой граф коммитов требует JavaScript. Полный тренажёр Learn Git Branching открывается кнопкой ниже.
Здесь пять команд и две ветки. В полном тренажёре — больше сорока уровней, песочница и «гит-гольф».
Что такое Learn Git Branching?
Лучший способ понять Git — увидеть его в действии
Визуализация в реальном времени
Каждая команда Git мгновенно отображается на графе коммитов. Вы видите, как устроены ветки, слияния и ребейзы!
Пошаговые уроки
От базовых коммитов до продвинутых техник — всё разбито на понятные уровни
Геймификация
Решайте задачи, получайте очки, соревнуйтесь в «гит-гольфе»
Песочница
Экспериментируйте с командами Git без страха что-то сломать
На русском языке
Полная локализация интерфейса и всех уроков на русский язык
Что вы изучите?
Основы
Коммиты, ветки, переключение
- git commit
- git branch
- git checkout
Слияние и ребейз
Объединение веток разными способами
- git merge
- git rebase
- Интерактивный rebase
Продвинутые техники
Cherry-pick, относительные ссылки
- git cherry-pick
- HEAD~, HEAD^
- git reflog
Удалённые репозитории
Работа с remote, push, pull, fetch
- git clone
- git push / pull
- git fetch
Как начать изучать Git?
Нажмите «Начать обучение»
Приложение откроется в новой вкладке, никакой установки не требуется!
Введите levels
Откроется список уроков — выберите первый для начинающих
Следуйте инструкциям
Вводите Git-команды и наблюдайте, как меняется визуализация
Совет
Используйте undo, если ввели неправильную команду
Гит-гольф
Старайтесь решить уровень минимальным числом команд!
Песочница
Введите sandbox для свободных экспериментов
Git без страха: что это и с чего начинать
Что такое Git и зачем он школьнику и учителю
Git — система контроля версий: программа, которая запоминает состояния проекта и позволяет вернуться к любому из них. Файл не превращается в «диплом_финал_финал2_точно_последний.docx», потому что все версии живут в одном месте, у каждой есть автор, дата и комментарий. Для кода это стандарт индустрии, но польза шире: так же ведут тексты, конспекты, наборы задач и даже рабочие программы.
Ключевых понятий всего три. Коммит — снимок проекта в момент времени с подписью, что именно изменилось. Ветка — указатель на коммит, позволяющий вести параллельную линию работы, не ломая основную. Слияние — способ соединить две линии обратно. Всё остальное в Git наращивается на этот каркас, и именно его показывает граф выше.
Merge и rebase: чем они отличаются на самом деле
Это главный вопрос, ради которого люди и открывают Learn Git Branching. Merge создаёт новый коммит с ДВУМЯ родителями: история сохраняет факт, что работа шла параллельно и в такой-то момент сошлась. Ничего не переписывается, все прежние коммиты остаются собой.
Rebase поступает иначе: он берёт коммиты вашей ветки и заново накладывает их поверх целевой. История становится линейной, будто вы всё время работали в одну нитку. Плата за красоту — это уже НОВЫЕ коммиты с другими идентификаторами; старые остаются лежать в стороне, пока их не уберёт сборщик мусора. Отсюда практическое правило: rebase хорош для своей, ещё не опубликованной ветки, а ветку, которую кто-то уже скачал себе, переписывать не стоит.
Почему тренажёр работает лучше, чем конспект
Git тяжело даётся не из-за количества команд, а из-за того, что состояние репозитория невидимо: вы набираете строку в терминале и получаете в ответ ещё одну строку. Learn Git Branching делает состояние видимым — граф перерисовывается на каждой команде, и «checkout переносит указатель, а не копирует файлы» перестаёт быть заклинанием.
Тренажёр открывается в браузере, полностью на русском, ничего не устанавливает и не может испортить настоящий репозиторий. Материал разбит на короткие уровни с проверкой; есть режим песочницы для свободных экспериментов и «гит-гольф» — соревнование, кто решит уровень меньшим числом команд.
Часто задаваемые вопросы
Нужно ли устанавливать Git? expand_more
На русском ли языке? expand_more
Что именно разбирается? expand_more
Можно ли просто поэкспериментировать? expand_more
Подойдёт ли для урока? expand_more
Готовы освоить Git?
Откройте Learn Git Branching и начните визуальное путешествие в мир контроля версий!
rocket_launch Начать обучение open_in_new