3. Берём проект под контроль версий

Навигация в терминале

Перед тем как создать наш первый репозиторий, давай разберёмся, как терминал находит файлы и папки. Понимание путей спасёт от кучи проблем, когда мы начнём вводить команды Git.


Текущая рабочая директория

Каждая вкладка терминала — это отдельная сессия командной строки, и можно держать открытыми сразу несколько.

Любая сессия терминала начинается внутри какой-то папки на компьютере. Это место называется текущей рабочей директорией (часто сокращают до cwd — current working directory).

Директория — это то же самое, что и папка. В разных операционных системах используются разные термины, но суть одна.

При работе в терминале многие команды взаимодействуют с файлами и папками относительно этой рабочей директории. Само собой, между папками можно перемещаться.

Большинство отдельных приложений-терминалов по умолчанию открываются в домашней папке пользователя. А вот терминалы, встроенные в редакторы кода, обычно стартуют прямо в папке проекта, поэтому там ты сразу находишься где нужно.

Чтобы узнать свою текущую папку, выполни команду

. Она покажет полный путь к рабочей директории.

Задача
Пройдено

Выполни команду pwd в терминале, чтобы увидеть текущую рабочую директорию.

Чтобы сменить текущую папку, используй команду

, указав после неё путь к нужной директории.

Например, если проект лежит в ~/projects/gitbybit, можно выполнить:

cd ~/projects/gitbybit

Твой реальный путь до проекта, скорее всего, будет другим, так что используй его.


Подводные камни: пробелы и регистр в путях

Обрати внимание: если путь содержит пробелы, его нужно брать в кавычки, чтобы команда cd восприняла его как один аргумент.

Например, для пути C:\Program Files нужно ввести cd "C:\Program Files". Можно использовать как одинарные ', так и двойные " кавычки, главное — не смешивать их.

Например, для пути /home/alex/my documents нужно ввести cd "/home/alex/my documents". Можно использовать как одинарные ', так и двойные " кавычки, главное — не смешивать их.

Имей в виду, что в большинстве операционных систем (включая Linux и macOS) пути и команды чувствительны к регистру. Например, /home/Alex и /home/alex — это два разных пути.


Абсолютные пути

Например, /home/alex/gitbybit-part1C:\Users\Alex\gitbybit-part1 — это абсолютный путь. Он берёт начало от корневой папки файловой системы. Такие пути очень конкретны и всегда указывают на одно и то же место на твоём компьютере, независимо от текущей рабочей директории. Но они привязаны именно к ТВОЕМУ компьютеру, поэтому в инструкциях для других людей от них мало толку.

Абсолютные пути всегда начинаются с буквы диска (C: в Windows) или со слеша (/, который означает корень файловой системы в Linux и macOS).


Относительные пути

Ещё бывают относительные пути. Они строятся относительно текущей рабочей директории и гораздо универсальнее. Например, file.txt или ./file.txt указывает на файл в текущей папке, а ../notes/todo.md — на файл внутри папки notes на уровень выше.

Относительные пути идут от папок проекта, а не от корня файловой системы. Поэтому команды, использующие такие пути, можно запустить на любом компьютере, если структура проекта одинаковая. Это делает их идеальными для совместной работы, контроля версий и документации.

Есть специальные сокращения: . (текущая директория) и .. (родительская директория). Чтобы перейти в родительскую директорию, используй команду cd ... Она поднимет тебя на один уровень вверх по дереву папок.

Иногда пути записывают так: ./example. Это то же самое, что и example (текущая папка подразумевается). То есть команда cd ./example равносильна cd example.

Эти сокращения можно комбинировать с именами папок для перехода в нужное место. Например, чтобы перейти в папку example, которая находится на два уровня выше твоего проекта, выполни команду cd ../../example.

Многие инструменты командной строки принимают пути в качестве аргументов, так что эти знания пригодятся не только для команды cd.

ОЧЕНЬ ПОЛЕЗНАЯ ФИШКА: В терминале можно использовать клавишу Tab для автодополнения имён файлов и папок. Например, если есть подпапка src, введи cd s и нажми Tab. Терминал сам допишет команду до cd src (или cd ./src на некоторых системах, что то же самое). Это отличный способ избежать опечаток и ускорить работу.

Автодополнение по клавише Tab в терминале.
Круто, полезно знать

Мы только что разобрали, как работают пути и текущая рабочая директория. Давай проверим это на практике.

Сейчас твой терминал должен находиться в корневой папке проекта. Именно здесь мы и создадим наш репозиторий. Но лишний раз проверить, там ли ты находишься, никогда не повредит. Потому что иногда...

Давай поиграем. Представь себя котом, который решил помочь любимому человеку, стоило тому отойти за кофе. К счастью, удалось запустить всего одну команду: cd ~ (сделай это сейчас). Это изменит текущую директорию, но чуть позже мы разберёмся, как вернуться обратно в проект.

Задача
Пройдено

Теперь, используя изученные команды, верни терминал в корневую папку проекта.

Подсказка 1: Если не помнишь путь к проекту, прокрути терминал вверх до вывода команды pwd из прошлого шага.

Подсказка 2: Если совсем не получается, открой новый терминал в папке проекта (правда, это читерство).

Отлично, похоже, с путями и текущей рабочей директорией мы разобрались. Давай применим эти знания и инициализируем репозиторий.

Next step
Хочешь попробовать Сюжетный режим?

Пройди курс так, как задумано: порционное обучение, чёткий порядок и постепенное открытие статей в Gitопедии. В любой момент можно продолжить работу с настоящим Git прямо в VS Code, Cursor, Antigravity или Windsurf.

Сюжетный режим
БЕСПЛАТНО
(требуется войти в аккаунт)