kottans / frontend-2022-homeworks

16 stars 184 forks source link

MIT Licensed Kottans-Frontend        Telegram

Frontend 2022 course homeworks

Цей репозиторій було створено для того, щоб студенти могли надсилати свої домашні завдання для перевірки.

Виконайте наведені нижче інструкції, щоб надіслати код на розгляд.

Зміст

Огляд contribution flow

Тепер ви є учасником освітнього проекту з відкритим кодом.

Ці слайди візуалізують contribution workflow.

Наведені нижче інструкції проведуть вас через contribution workflow - так ви будете публікувати код своїх завдань.

Словарик

Термін Визначення
repo скорочення від "репозиторій"
homeworks main repo Kottans FE репозиторій домашніх завдань курсу: https://github.com/kottans/frontend-2022-homeworks
homeworks fork ваш власний форк головної репи домашніх завдань
homeworks local repo ваш локальний клон форку домашнього завдання
app програма (або веб-сторінка), яку ви розробляєте для виконання конкретного завдання в курсі
app repo репозиторій, який містить код вашої програми

Contribution stage A. Налаштування форку і локального клону

Зробити це потрібно лише один раз.

A1. Форкніть основне репо homeworks через веб-інтерфейс GitHub

A2. Клонуйте homeworks fork на вашій локальній машині:

Перед будь-якими подальшими операціями переконайтеся, що ви перебуваєте в каталозі локального repo homeworks

A3. Додайте homeworks main repo як upstream:

A4. У homeworks local repo додайте папку зі своїм іменем користувача github до каталогу submissions

Ви додаватимете код із кожного завдання (app) в його окремий каталог під ваш іменований каталог. Отже, структура файлу буде схожа на наступну (у цьому прикладі amashoshyna - це ім'я користувача, а js-dom - назва завдання)

File structure example

Contribution stage B. Додавання нового коду та оновлення submissions

B1. Відправка коду нового завдання (app).

ВАЖЛИВІ речі, про які слід завжди пам’ятати.

  1. Не робіть коміти у main.

  2. checkout main перед створенням нової гілки, тобто не створюйте нову гілку, поки ви на будь-якій гілці яка не main.

  3. Не мержіть свої гілки в main. Ви можете змержити main у свою гілку, якщо ви усвідомте, навіщо вам це потрібно. У поточному робочому процесі вам зазвичай це не потрібно.

І не панікуйте, якщо під час переходу між гілками якийсь код зник. Він стане доступним для вас, коли ви повернетеся до певної гілки. Суть полягає в тому, щоб подавати завдання ізольовано одне від одного.

B11. Переконайтеся, що app, який ви розробляєте для виконання завдання:

(a) має власний спеціальний проект/репозиторій на GitHub (app repo)

(b) опубліковано на GitHub pages

B12. In your homeworks local repo do the following:

B121. Синхронізуйте main гілку вашого homeworks local repo та homeworks fork (origin) з гілкою main homeworks main repo (upstream):

На той момент у вас вже може бути код у іншій гілці завдань і може здатися, що його вже немає. Не хвилюйтеся, він все ще доступний на власній гілкці завдань. Немає необхідності об’єднувати цю гілку в main, і не мержіть його в main, оскільки це, швидше за все, призведе до конфліктів коду.

B122. Створіть спеціальну гілку для вашої нової кодової бази завдань (app), перебуваючи на main:

B123. Додайте необхідні файли:

ВАЖЛИВО! Додайте лише файли/код, необхідні для перевірки і написані вами, наприклад файли html, css, scss, js тощо. Зображення, значки, каталоги IDE, такі як .idea, .vscode тощо - не потрібні для перевірки коду. css-файли, які є результатом компіляції вашого scss, теж немає сенсу перевіряти, а отже і подавати на перевірку. Ніколи не використовуйте .git у своїх завданнях які надсилаєте. Скопіюйте потрібні файли по одному. Ніколи не копіюйте папки масово, оскільки це може спричинити за собою копіювання небажаних файлів і прихованих папок.

B124. Відкрийте Pull Request (PR):

github-pr-opening

B125. Попросити рев'ю:

B2. Коли потрібні будь-які зміни

Щоразу, коли ви хочете або вам буде запропоновано внести будь-які зміни, виконайте такі дії:

B21. Оновіть свою програму (у відповідному app repo):

B22. Оновіть свій PR - у вашому homeworks local repo:

Ваш PR буде оновлено автоматично.

B23. Перевірте свій PR і повідомте ментора:

Коли ваш PR буде нарешті змержено, напишіть міркування про завдання і досвід код рев'ю до вашого щоденника студента (ваш repo kottans-frontend):

  • що для вас було нового
  • що вас здивувало
  • що ви збираєтеся використовувати в майбутньому

B3. Коли всі ваші PR нарешті будуть вмержені

Оновіть homeworks local clone та homeworks fork, щоб мати весь свій код у main:

FAQ

Q1: Я зробив(ла) частину домашок в рамках попереднього курсу або р2р. Мені їх зарахують?

A1: Щоб це сталося, треба зробити наступне:

Для всіх PR, які не вмерджено - подай код на рев'ю, як описано в цьому документі.

Для PR, які було вмерджено в інших репо:

  1. Знайди всі вмерджені PR в інших репо, які треба зарахувати, і май лінки на них під рукою.
  2. Відкрий issue в цьому репо скориставшись шаблоном
  3. В студентському чаті закинь лінк на issue і попроси менторів врахувати вже раніше прийняті задачі.
  4. Ментори перевірять статус залінкованих PR і навісять відповідні лейбли.
  5. Через деякий час в статі цього репо з'являться відповідні записи.

Довідкові матеріали та усунення проблем

  1. Contribution guide for beginners.
  2. Зверніться до цього посібнику з усунення проблем щоразу, коли ви стикаєтеся з будь-якими конфліктами під час оновлення main з upstream (оригінальне репо) або маєте непов’язані файли чи коміти у своїх pull requests
  3. Є проблеми? Запитайте у спільноти. У багатьох інших були подібні проблеми, спільнота допоможе вам