Git — система контроля версий, которую используют в 99% проектов по всему миру. Без понимания Git невозможно работать в команде. За час вы освоите всё необходимое для практики.

Установка и конфигурация

# bash
# Установка (Ubuntu/Debian)
sudo apt install git

# Первичная настройка (обязательно!)
git config --global user.name "Ваше Имя"
git config --global user.email "email@example.com"
git config --global core.editor "code --wait"  # VS Code

Основные команды

# workflow.sh
# Инициализация репозитория
git init my-project && cd my-project

# Цикл: изменить → добавить в индекс → зафиксировать
git add .                              # все изменения
git add src/app.py                     # конкретный файл
git commit -m "feat: добавить авторизацию"

# Просмотр истории
git log --oneline --graph --all
git status

// Конвенция сообщений коммитов

Используйте Conventional Commits: feat: (новая функция), fix: (исправление), docs: (документация), refactor: (рефакторинг), test: (тесты). Чёткие коммит-сообщения — уважение к будущим разработчикам (и к себе через полгода).

Git система контроля версий

Ветки (branches)

# branches.sh
# Создать и переключиться на новую ветку
git checkout -b feature/user-auth
# или в новом синтаксисе
git switch -c feature/user-auth

# Слить ветку в main
git switch main
git merge feature/user-auth

# Удалить ветку после слияния
git branch -d feature/user-auth

Работа с GitHub: push и pull request

# github.sh
# Связать с удалённым репозиторием
git remote add origin git@github.com:user/repo.git

# Отправить ветку на GitHub
git push -u origin feature/user-auth

# Получить изменения коллег
git fetch origin
git pull origin main

Разрешение конфликтов

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

GitHub и командная разработка