Инструменты пользователя

Инструменты сайта


courses:git_rules:pull_request_creation_steps

Пошаговая инструкция по отправке работ на Forgejo для чайников

Предварительная подготовка

Данные шаги нужно сделать только один раз в самом начале:

  1. Установить git. Для Ubuntu делается так: sudo apt install git
  2. Настроить git config (как указано здесь 1. Настройки названия аккаунта в конфигурации)
    1. git config –local user.email <your-email>, где <your-email> – почта, на которую зарегистрирован forgejo аккаунт
    2. git config –local user.name <your-moevm-login>, где <your-moevm-login>moevm логин
    3. Флаг –local задаёт конфиг только для текущего репозитория. Для настройки конфигурации для всей системы (и всех репозиториев одновременно) необходимо использовать флаг –global
  3. Создать ssh токен для работы с forgejo:

Шаги

  1. Войти в аккаунт на forgejo и перейти в нужный репозиторий
  2. Скопировать ссылку для скачивания
  3. Открыть терминал и перейти в папку, куда будет скачан репозиторий: cd path/to/the/dir
  4. Скачать репозиторий при помощи git: git clone <link>, где <link> – это скопированная ссылка из шага 2
  5. Открыть скачанный репозиторий. Папка называется также как и имя репозитория
  6. Создать новую ветку для работы: git switch -c <Фамилия>_<Имя>_<имя-работы>.
    1. Внимание, если при повторном использовании репозитория (например, если сдаётся уже вторая лабораторная работа), то перед созданием новой ветки необходимо переключиться на основную ветку main: git switch main
  7. Создать папку с таким же названием, как и ветка: mkdir <Фамилия>_<Имя>_<имя-работы>. Внутри этой папки создать папку src
  8. Скопировать файлы следующим образом:
    1. Файлы с исходным кодом скопировать в <Фамилия>_<Имя>_<имя-работы>/src
    2. Отчёт (если требуется) скопировать в <Фамилия>_<Имя>_<имя-работы>.
      1. Внимание, отчёт должен называться аналогично ветке и папке: <Фамилия>_<Имя>_<имя-работы>.pdf
  9. Добавить новую папку в git-индекс: git add <Фамилия>_<Имя>_<имя-работы>. Если скопированы лишние файлы в пункте 8, то можно по отдельности добавлять файлы, например: git add <Фамилия>_<Имя>_<имя-работы>/src/main.c
  10. Создать коммит. Сообщение должно содержать Фамилию, Имя и название работы. Можно использовать имя ветки: git commit -m «<Фамилия>_<Имя>_<имя-работы>: lab done»
  11. Отправить ветку в удаленный репозиторий: git push origin <Фамилия>_<Имя>_<имя-работы>
  12. Перейти в репозиторий на forgejo и открыть вкладку «Pull requests»
  13. Нажать кнопку «New pull request»
  14. В пункте «merge into» выбрать ветку moevm:main, в пункте «pull from» выбрать moevm:<Фамилия>_<Имя>_<имя-работы>
  15. Нажать кнопку «Create pull request»
  16. Указать в названии <Фамилия>_<Имя>_<имя-работы>

Пример

Пример будет показан для следующих данных:

  • Репозиторий moevm/pr-2024-4341
  • Фамилия: Иванов
  • Имя: Иван
  • Имя работы: lb3

Копирование ссылки на репозиторий:

cd education
# Клонирование репозитория (пункты 1-5)
git clone git@github.com:moevm/pr-2024-4341.git
cd pr-2024-4341
# Создание ветки (пункт 6)
git switch -c Ivanov_Ivan_lb3
# Создание папки (пункт 7)
mkdir Ivanov_Ivan_lb3
mkdir Ivanov_Ivan_lb3/src
# Копирование файлов в папку (пункт 8)
cp ~/etu/programming/lb3/main.c Ivanov_Ivan_lb3/src/main.c
# Добавление файлов (пункт 9)
git add Ivanov_Ivan_lb3
# Создание коммита (пункт 10)
git commit -m "Ivanov_Ivan_lb3: lb3 done"
# Отправка ветки (пункт 11)
git push origin Ivanov_Ivan_lb3
courses/git_rules/pull_request_creation_steps.txt · Последнее изменение: sergey_tinyakov