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) является основой дальнейшей работы с системой контроля версий.