Детектив по времени Git

GitGitBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

Добро пожаловать, Детектив по времени Git! Важный кусок кода пропал из проекта вашей команды, и теперь на вас ложится задача разгадать эту загадку. Ваша миссия - использовать свои навыки управления журналом Git для поиска пропавшего кода и определения коммита, в котором он исчез. Эта задача проверит вашу способность эффективно искать в истории Git и фильтровать журналы.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL git(("Git")) -.-> git/BasicOperationsGroup(["Basic Operations"]) git(("Git")) -.-> git/BranchManagementGroup(["Branch Management"]) git/BasicOperationsGroup -.-> git/diff("Compare Changes") git/BranchManagementGroup -.-> git/log("Show Commits") subgraph Lab Skills git/diff -.-> lab-387782{{"Детектив по времени Git"}} git/log -.-> lab-387782{{"Детектив по времени Git"}} end

Исследуйте репозиторий Git

Перед началом работы обратите внимание, что для вас уже настроен репозиторий Git по пути ~/project/mystery-repo. Этот репозиторий содержит серию коммитов, в том числе и тот, в котором пропала наша загадочная функция. Ваш рабочий каталог уже инициализирован и готов к исследованию.

Задачи

  1. Перейдите в загадочный репозиторий по пути ~/project/mystery-repo.
  2. Используйте команды Git log для определения коммита, в котором функция secretAlgorithm() была удалена из файла secret.js.
  3. Найдите автора, ответственного за удаление функции.

Требования

  • Вы должны использовать команду git log с соответствующими параметрами для выполнения этого задания.
  • Все операции должны выполняться в директории ~/project/mystery-repo.
  • Вам нужно найти точный хэш коммита, в котором была удалена функция secretAlgorithm().
  • Вы должны определить автора коммита, в котором была удалена функция.
  • Запишите хэш коммита в файл с именем ~/user_answer.txt.
  • Запишите имя автора в файл с именем ~/user_author.txt.

Пример

После успешного выполнения задания вы должны быть в состоянии предоставить информацию, похожую на следующую:

cat ~/user_answer.txt
a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9
cat ~/user_author.txt
Jane Doe
✨ Проверить решение и практиковаться

Резюме

В этом задании вы проверили свои навыки исследования истории Git. Вы узнали, как использовать расширенные функции команды git log, такие как опция pickaxe (-S), для поиска конкретных изменений кода в истории проекта. Этот навык бесценен при определении времени и причины внесения определенных изменений, особенно в крупных проектах с обширной историей.

Помните, что функции истории Git - это мощные инструменты для понимания эволюции вашего проекта. Они могут помочь вам найти ошибки, понять решения по дизайну и даже восстановить потерянный код. Продолжайте практиковать эти навыки, и вы станете настоящим Детективом по времени Git, способным разгадать любую загадку в истории вашего проекта!