Цей репозиторій було створено для того, щоб студенти могли надсилати свої домашні завдання для перевірки.
Виконайте наведені нижче інструкції, щоб надіслати код на розгляд.
Зміст
Тепер ви є учасником освітнього проекту з відкритим кодом.
Ці слайди візуалізують 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 | репозиторій, який містить код вашої програми |
Зробити це потрібно лише один раз.
A1. Форкніть основне репо homeworks через веб-інтерфейс GitHub
A2. Клонуйте homeworks fork на вашій локальній машині:
git clone https://github.com/<your-username>/frontend-2022-homeworks.git
Перед будь-якими подальшими операціями переконайтеся, що ви перебуваєте в каталозі локального repo homeworks
A3. Додайте homeworks main repo як upstream:
git remote add upstream https://github.com/kottans/frontend-2022-homeworks.git
A4. У homeworks local repo додайте папку зі своїм іменем користувача github до каталогу submissions
Ви додаватимете код із кожного завдання (app) в його окремий каталог під
ваш іменований каталог. Отже, структура файлу буде схожа на наступну
(у цьому прикладі amashoshyna
- це ім'я користувача, а js-dom
- назва завдання)
ВАЖЛИВІ речі, про які слід завжди пам’ятати.
Не робіть коміти у
main
.
checkout main
перед створенням нової гілки, тобто не створюйте нову гілку, поки ви на будь-якій гілці яка неmain
.Не мержіть свої гілки в
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
):
git checkout main
git pull upstream main
git push origin main
На той момент у вас вже може бути код у іншій гілці завдань і може здатися, що його вже немає. Не хвилюйтеся, він все ще доступний на власній гілкці завдань. Немає необхідності об’єднувати цю гілку в
main
, і не мержіть його вmain
, оскільки це, швидше за все, призведе до конфліктів коду.
B122. Створіть спеціальну гілку для вашої нової кодової бази завдань (app), перебуваючи на main
:
git checkout main
git branch <task-branch-name>
(<task-branch-name>
can be e.g. dom-api-task
)B123. Додайте необхідні файли:
git checkout <task-branch-name>
./submissions/YOUR_USERNAME
, щоб
шлях до вашого завдання був – ./submissions/YOUR_USERNAME/TASK_NAME
(перегляньте знімок екрана вище для прикладу структури, яку ви очікуєте)ВАЖЛИВО! Додайте лише файли/код, необхідні для перевірки і написані вами, наприклад файли
html
,css
,scss
,js
тощо. Зображення, значки, каталоги IDE, такі як.idea
,.vscode
тощо - не потрібні для перевірки коду.css
-файли, які є результатом компіляції вашогоscss
, теж немає сенсу перевіряти, а отже і подавати на перевірку. Ніколи не використовуйте.git
у своїх завданнях які надсилаєте. Скопіюйте потрібні файли по одному. Ніколи не копіюйте папки масово, оскільки це може спричинити за собою копіювання небажаних файлів і прихованих папок.
git add
і закомітьте зміниB124. Відкрийте Pull Request (PR):
git push --set-upstream origin <task-branch-name>
Переконайтеся, що ваш PR не містить жодних непов’язаних файлів або комітів від будь-яких інших завдань, і жодні файли з інших ваших завдань або від інших авторів не видаляються
B125. Попросити рев'ю:
Щоразу, коли ви хочете або вам буде запропоновано внести будь-які зміни, виконайте такі дії:
B21. Оновіть свою програму (у відповідному app repo):
B22. Оновіть свій PR - у вашому homeworks local repo:
git checkout <task-branch-name>
Ваш PR буде оновлено автоматично.
B23. Перевірте свій PR і повідомте ментора:
Коли ваш PR буде нарешті змержено, напишіть міркування про завдання і досвід код рев'ю до вашого щоденника студента (ваш repo
kottans-frontend
):
- що для вас було нового
- що вас здивувало
- що ви збираєтеся використовувати в майбутньому
Оновіть homeworks local clone та homeworks fork, щоб мати весь свій код
у main
:
git checkout main
git pull upstream main
git push origin main
Q1: Я зробив(ла) частину домашок в рамках попереднього курсу або р2р. Мені їх зарахують?
A1: Щоб це сталося, треба зробити наступне:
Для всіх PR, які не вмерджено - подай код на рев'ю, як описано в цьому документі.
Для PR, які було вмерджено в інших репо:
main
з upstream (оригінальне репо)
або маєте непов’язані файли чи коміти у своїх pull requests