Раскройте секретные изменения в коде

Beginner

Введение

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

Исследование репозитория секретного проекта

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

Задачи

  1. Перейдите в каталог секретного проекта: ~/project/secret-project.
  2. Используя команды Git diff, определите файлы, которые были изменены, но еще не добавлены в индекс (unstaged).
  3. Выясните, какие файлы уже подготовлены к коммиту (staged).
  4. Найдите конкретную строку, которая была добавлена в файл encryption.js.

Требования

  • Все операции должны выполняться в директории ~/project/secret-project.
  • Вам необходимо идентифицировать:
    • Имена файлов с изменениями, не добавленными в индекс.
    • Имена файлов с изменениями, подготовленными к коммиту.
    • Точную строку, добавленную в encryption.js.
  • Запишите результаты своего расследования в файл ~/investigation_report.txt. Шаблон отчета уже подготовлен. Вы можете открыть и отредактировать его с помощью любого текстового редактора на рабочем столе.

Пример

После успешного выполнения задания ваш файл ~/investigation_report.txt может выглядеть примерно так:

Unstaged files:
xxx.js
xxx.js

Staged files:
xxx.js
xxx.js

Added line in encryption.js:
const ……

Обязательно замените xxx.js на реальные имена файлов, а const …… — на ту самую добавленную строку. Не меняйте формат отчета, включая пустые строки.

Резюме

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

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