Загрузка

Загрузка источников… все файлы

    Обзор

    Branchwise учит git в командной строке. Каждый уровень начинается с небольшого репозитория, нарисованного в виде графа коммитов, а рядом нарисована цель. Вводите настоящие команды git; граф меняется после каждой, и уровень пройден, как только ваш репозиторий совпадёт с целью, каким бы путём вы ни пришли.

    33 урока ведут от git init и индекса через ветки, слияния, теги и отмену изменений к cherry-pick, интерактивному перебазированию, rebase --onto, fixup-коммитам с --autosquash, стопкам веток с --update-refs, fetch, pull и push с origin товарища по команде, force-with-lease, bisect и рабочим деревьям. Команды отвечают так же, как git, вместе с ошибками.

    Автор
    wasmga.me
    Выпуск
    2026

    Подробно об управлении

    В командной строке

    КлавишаДействие
    TypeНабрать команду; команды git, а также cd, edit, make test и ls там, где они нужны в уроке
    EnterВыполнить команду; на пустой строке пауза
    Вверх/ВнизПрошлые команды
    Влево/ВправоДвигать курсор
    Щелчок/КасаниеКоммит добавляет в команду свой id, ветка или тег своё имя

    В списке задач rebase

    КлавишаДействие
    Вверх/ВнизВыбрать строку
    P, S, F, DСделать её pick, squash, fixup или drop
    K/JСдвинуть строку вверх или вниз
    EnterНачать rebase
    Q/BackspaceВыйти, ничего не меняя

    Шпаргалка

    Не git

    hint
    Наводка для этого уровня
    solution
    Один из способов пройти его (стоит больше подсказки)
    undo
    Отменить последнюю команду, которая что-то изменила
    clear
    Очистить вывод

    Как назвать коммит

    HEAD, @
    Где вы сейчас
    main~2
    На два коммита назад по первым родителям
    main^2
    Второй родитель слияния
    HEAD@{1}
    Где был HEAD на одно перемещение раньше (reflog)
    @{u}
    Upstream вашей ветки, например origin/main
    -
    Со switch или checkout: где вы были до этого

    Счёт

    1000
    За каждый уровень, если команд не больше, чем в кратчайшем пути
    -100
    За каждую лишнюю команду
    -250
    За каждую подсказку; solution считается за две

    Советы

    1. Если граф вас удивил, выполните git status и git log --all: они выводят текстом то, что показывает рисунок.
    2. Бледные коммиты уже недостижимы ни из одной ветки, тега или HEAD. Они никуда не делись, и reflog может их найти.
    3. Уровень проверяет только конечный результат, поэтому годится любой путь к цели; за короткий дают больше очков.
    4. Набирать id коммита почти никогда не нужно: коснитесь коммита или отсчитайте назад от ветки через ~.