Что такое Git и для чего он используется?

«Что такое Git и для чего он используется?» — вопрос из категории Инструменты тестирования, который задают на 25% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Git — это распределённая система контроля версий (DVCS). Она предназначена для отслеживания изменений в исходном коде и файлах проекта, управления историей правок и организации совместной работы нескольких разработчиков.

Ключевые концепции:

  • Репозиторий (Repository): хранилище истории проекта и метаданных.
  • Коммит (Commit): снимок состояния файлов на определённый момент времени с уникальным хэшем и комментарием.
  • Ветка (Branch): изолированная линия разработки. Основная ветка часто называется main или master.
  • Слияние (Merge) и Перебазирование (Rebase): способы интеграции изменений из одной ветки в другую.

Базовый рабочий процесс:

# Клонирование удалённого репозитория
git clone https://github.com/user/project.git

# Создание новой ветки для задачи
git checkout -b feature/new-login

# Добавление изменённых файлов в область staged
git add .

# Фиксация изменений с комментарием
git commit -m "Add user authentication logic"

# Отправка ветки на удалённый сервер
git push origin feature/new-login
# После code review изменения сливаются в main через Pull Request (PR)

Для чего используется в контексте тестирования:

  1. Хранение тестовых скриптов (автотесты на Python, Java, JS).
  2. Версионирование тестовых данных и конфигураций.
  3. Интеграция с CI/CD (Jenkins, GitLab CI): автоматический запуск тестов при каждом пуше в репозиторий.
  4. Совместная работа над тестовым фреймворком в команде.

Основные преимущества: децентрализация, скорость, поддержка нелинейной разработки через ветвление, интеграция с популярными платформами (GitHub, GitLab, Bitbucket).