Шесть вопросов на основные команды и понятия. Закрывает трек.
Этот урок закрывает трек по git. Шесть вопросов, нужно ответить правильно
на все. Перепройти можно сколько угодно раз.
Квиз · закрепить тему
Проверь, что запомнил
01 Чем git принципиально отличается от SVN/CVS?
Distributed VCS — ключевое отличие. У каждого клона полная история, коммитить можно офлайн, сервер (origin) — просто общий клон.
02 Что произойдёт после git add file.txt?
git add переносит изменения из working directory в staging. Коммит фиксирует то, что в staging, отдельной командой `git commit`.
03 Что такое ветка в git с физической точки зрения?
Ветка — это просто указатель: один SHA коммита. Хранится как файл `.git/refs/heads/<имя>` или строка в `.git/packed-refs`. Поэтому создание/удаление веток мгновенное.
04 В чём главное отличие rebase от merge?
Merge создаёт новый merge-commit с двумя родителями. Rebase отрезает твои коммиты и прикладывает заново поверх базы, получаются новые объекты с новыми SHA.
05 Почему нельзя ребейзить публичную (общую) ветку?
Rebase создаёт новые коммиты с новыми SHA. У коллег в их клонах остаются старые. При pull/push истории расходятся: получается беспорядок и force-push в общую ветку.
06 Возник конфликт при merge или rebase в app.ts. Разрулил руками, убрал маркеры <<<<<<</=======/>>>>>>>. Что дальше?
Резолв засчитывается через `git add <файл>`. После этого git понимает, что конфликт разрулен, и можно продолжить операцию: `commit` для merge или `rebase --continue` для rebase.
Прогресс сохранён в этом браузере
Почистишь историю или откроешь с телефона, и отметки пропадут.
Оставь почту, они переедут в аккаунт. Пароль придумывать не нужно.
Готово. теперь в аккаунте: прогресс виден с любого устройства.
Мой прогресс
Отметка сохранена только в этом браузере.
Войди,
и прогресс переедет в аккаунт: он будет виден с телефона и не потеряется.