ДЗ 1 - maxred01/QA2825 GitHub Wiki


Домашнее задание: Основы работы с Git и GitHub

Цель задания

Освоить основные workflow-процессы работы с системой контроля версий Git и платформой GitHub, которые ежедневно используются в реальной разработке

Предварительные требования

  1. Установленный Git на компьютере
  2. Аккаунт на GitHub
  3. Установленный PyCharm (или другая IDE с поддержкой Git)
  4. Доступ к репозиторию задания

Теоретическая часть (Мини-конспект)

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

Команда Назначение git clone Скачать репозиторий на компьютер git status Показать состояние рабочих файлов git add Добавить файл в индекс (staging area) git commit -m "message" Зафиксировать изменения с комментарием git push Отправить коммиты в удаленный репозиторий git pull Скачать изменения из удаленного репозитория git branch Показать список веток git checkout Переключиться на ветку git checkout -b <new_branch> Создать и переключиться на новую ветку git merge Влить указанную ветку в текущую git log Показать историю коммитов

Практическая часть

Задание 1: Начало работы

  1. Клонируйте репозиторий на локальную машину:
    git clone https://github.com/your-username/your-repo-name.git
  2. Создайте новую ветку для выполнения задания:
    git checkout -b feature/student-{your-name}
    Замените {your-name} на ваше имя.

Задание 2: Базовый workflow

  1. Создайте в корне репозитория файл {your-name}.txt (со своим именем).
  2. Добавьте в файл несколько строк текста о себе.
  3. Закоммитьте изменения:
    git add .
    git commit -m "Add student file with personal info"
  4. Отправьте изменения в удаленный репозиторий:
    git push origin feature/student-{your-name}

Задание 3: Синхронизация с основной веткой

  1. Переключитесь на ветку main:
    git checkout main
  2. Обновите основную ветку:
    git pull origin main
  3. Вернитесь в свою ветку и влейте изменения из main:
    git checkout feature/student-{your-name}
    git merge main
  4. Разрешите возможные конфликты, если они возникнут.
  5. Запушьте обновленную ветку:
    git push origin feature/student-{your-name}

Задание 4: Работа с чужой веткой

  1. Найдите ветку другого студента (например, feature/student-ivanov).
  2. Влейте изменения из чужой ветки в свою:
    git merge feature/student-ivanov
  3. Изучите изменения, добавленные другим студентом.
  4. Создайте коммит слияния (если потребуется).

Задание 5: Создание Pull Request

  1. На GitHub создайте Pull Request из вашей ветки в main.
  2. В описании укажите: · Что было сделано · Какие изменения внесены · С какими проблемами столкнулись

Работа в PyCharm

Настройка Git в PyCharm:

  1. Settings/Preferences → Version Control → Git
  2. Укажите путь к git.exe (обычно определяется автоматически)

Основные операции в PyCharm:

Клонирование репозитория:

  1. Get from VCS → Укажите URL репозитория → Clone

Создание ветки:

  1. В нижней панели нажмите на текущую ветку (например, main)
    • New Branch → укажите имя → Create

Коммит и пуш:

  1. Вкладка Git → Commit (или Ctrl+K)
  2. Выберите файлы для коммита, напишите сообщение
  3. Нажмите Commit and Push

Обновление ветки:

  1. Git → Pull (или Ctrl+T)

Переключение между ветками:

  1. В нижней панели нажмите на текущую ветку
  2. Выберите нужную ветку из списка → Checkout

Мердж веток:

  1. Git → Merge
  2. Выберите ветку для мерджа в текущую
⚠️ **GitHub.com Fallback** ⚠️