
Git - это распределённая система управления версиями, используемая для отслеживания изменений в исходном коде проекта.
В Git существует несколько основных областей, каждая из которых отвечает за определённые функции и этапы работы с проектом.
- Рабочая область (Workspace):
- Это папка на вашем компьютере, где вы храните файлы проекта.
- Содержит все ваши файлы, как отслеживаемые, так и неотслеживаемые Git.
- Вы можете редактировать, добавлять и удалять файлы в этой области.
- Изменения в этой области не фиксируются в истории Git, пока вы их не добавите.
- Область индекса (Staging Area или Index):
- Это виртуальная область, где вы собираете файлы для следующего коммита.
- Файлы добавляются в эту область вручную с помощью команды
git add
.
- Вы можете просмотреть изменения, которые будут включены в следующий коммит, с помощью команды
git status
.
- Вы можете изменить или удалить файлы из области подготовки, прежде чем сделать коммит.
- Локальный репозиторий (Local Repository):
- Локальный репозиторий содержит всю историю изменений вашего проекта, включая коммиты, ветки и теги.
- После того как изменения добавлены в область индекса, вы можете сохранить их в локальном репозитории с помощью команды
git commit
.
- Каждый коммит представляет собой моментальный снимок проекта в определенный момент времени.
- Комммиты неизменяемы, что обеспечивает целостность истории проекта.
- Вы можете просмотреть историю коммитов с помощью команды
git log
.
- Удалённый репозиторий (Remote Repository):
- Хранилище Git, расположенное на сервере.
- Используется для совместной работы над проектами.
- Вы можете клонировать удаленный репозиторий, чтобы создать локальную копию.
- Вы можете синхронизировать изменения между локальным и удаленным репозиториями.
Взаимодействие между этими областями происходит следующим образом:
- Изменения вносятся в рабочую область.
- Затем вы добавляете нужные изменения в область индекса с помощью
git add
.
- После этого коммитите изменения в локальный репозиторий с помощью
git commit
.
- При необходимости вы можете отправить изменения из локального репозитория на удалённый с помощью
git push
.
- Если другие разработчики внесли изменения в удалённый репозиторий, вы можете получить их с помощью
git pull
.
Все команды будут разобраны подробнее далее)