Урок курса

Основные команды Git: быстрый обзор

Bash Linux + Git: от новичка до уверенного пользователя

Основные команды Git: Управление файлами и первый коммит

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

Создаём репозиторий

Репозиторий — это обычная папка проекта + скрытая директория .git, где Git хранит историю и служебные данные.

Создадим новый проект:

mkdir my-git-project
cd my-git-project
git init

После git init у вас появляется .git/. Это база Git-объектов + конфиги.

Полезно сразу понять одну вещь:

Пока ты не сделал коммит — истории ещё нет. Есть только “пустой репозиторий”.

.gitignore: что не должно попадать в репозиторий

Перед тем как делать первые коммиты, стоит создать файл .gitignore — список путей и шаблонов, которые Git должен игнорировать.

Зачем:

  • не коммитить временные файлы (.log, .tmp),

  • кеши и сборку (dist/, build/, __pycache__/),

  • директории IDE (.idea/, .vscode/),

  • виртуальные окружения (.venv/, venv/),

  • OS-мусор (.DS_Store).

Пример минимального .gitignore (универсально):

# IDE
.vscode/
.idea/

# OS
.DS_Store

# build artifacts
dist/
build/

# logs
*.log

Дальше .gitignore коммитится как обычный файл:

git add .gitignore

git commit -m "Add .gitignore"

Важно: .gitignore не удаляет из истории то, что уже закоммичено. Он влияет только на то, что Git считает “неотслеживаемым” (untracked) в будущем.

Добавление файлов и индексирование

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

  1. Создайте файл README.md с кратким описанием вашего проекта:

    echo "# My Git Project" > README.md

  2. Проверьте статус репозитория:

    git status

    Вы увидите, что файл README.md находится в списке untracked files — он ещё не добавлен в индекс.

  3. Добавьте файл в индекс:

    git add README.md

    Команда git add подготавливает файл для следующего коммита. Теперь файл находится в состоянии staged.

  4. Проверьте статус снова:

    git status

    Вы увидите, что файл README.md готов для коммита.

Создание первого коммита

Коммит фиксирует текущее состояние репозитория и сохраняет его в истории.

  1. Сделайте первый коммит:

    git commit -m "Первый коммит: добавлен файл README.md"

    • Флаг -m позволяет добавить сообщение к коммиту.
    • Сообщение должно быть коротким и описывать внесённые изменения.
  2. Проверьте историю коммитов:

    git log

    Вы увидите подробную информацию о каждом коммите: хэш, автора, дату и сообщение.

Изменения и сравнение версий: git diff и git diff --staged

Теперь внесите изменения в README.md:  

echo "Some description" >> README.md

Проверьте статус:

git status -sb

Файл будет в состоянии modified (изменён, но не добавлен в staging).

Посмотрите разницу между текущим файлом и последним зафиксированным состоянием:

git diff

Это diff для working tree: изменения есть, но они ещё не выбраны для следующего коммита.

Добавьте изменения в staging:  

git add README.md

Теперь посмотрите разницу, которая реально попадёт в следующий коммит:  

git diff --staged

Итого:

  • git diff показывает изменения в рабочей директории (не staged);

  • git diff --staged показывает изменения в staging (то, что пойдёт в коммит).

Подведение итогов

В этом уроке вы узнали:

  • Как создать новый репозиторий и инициализировать его
  • Как добавлять файлы в индекс и фиксировать изменения с помощью коммитов
  • Как просматривать и отменять изменения

Продолжить с сохранением прогресса

Перейдите к уроку в учебном кабинете.

Перейти к интерактивному уроку