Skip to main content

Git — Основные понятия и как работает

Эта страница объясняет базовые принципы работы Git и ключевые термины системы контроля версий. Здесь разобрано, что такое репозиторий, коммит, ветки и как Git хранит историю изменений. Материал рассчитан на начинающих и помогает понять как устроена модель Git, что значительно упрощает дальнейшую работу с командами.


Что такое Git

Git — это распределённая система контроля версий (Version Control System, VCS).

Она позволяет:

  • хранить историю изменений проекта
  • работать нескольким разработчикам одновременно
  • возвращаться к предыдущим версиям кода
  • создавать параллельные версии разработки (ветки)

Git используется практически во всех современных проектах разработки.


Что такое Gitea

Gitea — это сервер для хранения Git-репозиториев.

Он выполняет функции:

  • хранения репозиториев
  • управления доступом разработчиков
  • совместной работы над кодом
  • просмотра истории изменений через веб-интерфейс

В нашей инфраструктуре Gitea доступен по адресу:

https://git.ext.flamy.studio/

Через него происходит:

  • хранение проектов
  • создание репозиториев
  • работа с ветками
  • Pull Request и code review

Основные понятия Git

Чтобы работать с Git, важно понимать несколько базовых терминов.


Репозиторий (Repository)

Репозиторий — это хранилище проекта и всей истории его изменений.

Он содержит:

  • исходный код
  • историю изменений
  • ветки проекта

Репозиторий может быть:

Тип Описание
Local repository копия проекта на компьютере
Remote repository репозиторий на сервере (Gitea)

Commit

Commit — это сохранённое изменение проекта.

Каждый commit содержит:

  • изменения файлов
  • автора изменений
  • дату
  • сообщение коммита

Пример сообщения коммита:

Add login validation

История проекта состоит из последовательности commit-ов.


Branch (ветка)

Branch — это отдельная линия разработки.

Ветки позволяют:

  • работать над новыми функциями
  • исправлять ошибки
  • экспериментировать с кодом

Пример структуры веток:

main
 ├─ feature/login
 └─ bugfix/header

Remote

Remote — это удалённый репозиторий.

Чаще всего используется remote с именем:

origin

Пример:

origin → https://git.ext.flamy.studio/user/project.git

Как Git хранит изменения

Git не сохраняет просто файлы — он хранит снимки состояния проекта.

Каждый commit — это состояние всех файлов на момент сохранения.

Пример:

Commit A → начальное состояние
Commit B → добавлен файл login.js
Commit C → исправлена ошибка

Это позволяет:

  • смотреть историю изменений
  • сравнивать версии
  • откатывать проект назад

Модель работы Git

Очень важно понимать как происходит сохранение изменений.

Git использует три области:

Working Directory
        ↓
Staging Area
        ↓
Repository

Working Directory

Это файлы проекта на вашем компьютере.

Здесь вы:

  • редактируете код
  • добавляете файлы
  • удаляете файлы

Git отслеживает изменения, но ещё не сохраняет их в историю.


Staging Area

Staging area — это промежуточная зона перед commit.

Сюда добавляются изменения, которые войдут в следующий commit.

Команда:

git add

Repository

Repository — это история commit-ов.

Когда выполняется:

git commit

изменения сохраняются в истории проекта.


Визуальная схема работы Git

Редактирование файлов
        ↓
git add
        ↓
Staging Area
        ↓
git commit
        ↓
История репозитория

Пример работы

Предположим, разработчик изменил файл:

login.js

Git покажет изменения:

git status

Добавить файл в staging:

git add login.js

Создать commit:

git commit -m "Add login validation"

Теперь изменения сохранены в истории проекта.


Локальный и удалённый репозиторий

Работа Git обычно происходит в двух местах:

локальный компьютер
        ↓
Git сервер (Gitea)

Процесс работы:

edit → commit → push

Push

Отправляет изменения на сервер.

git push

Pull

Получает изменения с сервера.

git pull

Почему Git удобен для командной работы

Git позволяет нескольким разработчикам работать над одним проектом одновременно.

Например:

Developer A → работает над login
Developer B → работает над profile

Каждый разработчик работает в своей ветке, а затем изменения объединяются.


Что важно запомнить

Git работает по простой модели:

изменение файлов
       ↓
git add
       ↓
git commit
       ↓
git push

Эта последовательность является основным рабочим процессом Git.


Краткая памятка

Repository  → хранилище проекта
Commit      → сохранённое изменение
Branch      → линия разработки
Remote      → удалённый репозиторий
Working Dir → файлы проекта
Staging     → подготовка commit

Итог

Git хранит историю проекта в виде последовательности commit-ов и позволяет разработчикам безопасно работать с кодом.

Понимание базовой модели Git (Working Directory → Staging → Commit) является основой дальнейшей работы с системой контроля версий.