Перша зміна в браузері і як її скасувати
Невелика зміна повністю у вебінтерфейсі GitHub: знайти файл, відредагувати, закомітити в нову гілку, бо main захищена, відкрити pull request, пройти перевірки й рев'ю, змерджити й викласти. А потім скасувати змерджену зміну кнопкою Revert, розібратися, коли робити revert, а коли виправляти вперед, і що продакту варто й не варто редагувати самостійно.
Урок 15 з 15~38 хв навчанняЗ них ~24 хв на запитання та завдання
Зміст1 із 66 кроків
Alex Tutor
Ви
Daniel
Alex Tutor
.md, FAQ, README, шаблони issues. І все це однаково проходить через pull request.Daniel
.tsx, config/prices.json, усе в .github/workflows/. Одна пропущена кома в конфігураційному файлі може зупинити збирання всього сайту.Ви
config/prices.json це просто число?Daniel
Alex Tutor
Питання 1
Які з цих змін Sofia може зробити власноруч у браузері, через pull request? Познач усе, що підходить.
Alex Tutor
Code. Відкрий папку pages, а в ній delivery.md. Або натисни t і набери «delivery», щоб шукати за назвою файлу.Ви
main.Alex Tutor
Edit this file («редагувати цей файл») станом на 2026 рік. Вона відкриває вебредактор GitHub просто в браузері.Daniel
Alex Tutor
Preview («попередній перегляд»), щоб побачити текст таким, як він виглядатиме на сторінці, а не сирим Markdown.Alex Tutor
Alex Tutor
Питання 2
Натискання іконки олівця на файлі в main одразу створює нову гілку, і кожне натискання клавіші в неї зберігається.
Alex Tutor
Commit changes… («закомітити зміни»). Відкривається вікно з повідомленням коміту, необов'язковим розширеним описом і вибором, куди піде коміт.Ви
Daniel
Alex Tutor
main branch» («закомітити просто в main») тобі недоступне: захист гілки пускає зміни в main лише через pull requests. Тож обирай «Create a new branch for this commit and start a pull request» («створити нову гілку для цього коміту й почати pull request»).Daniel
catchow-sofia-patch-1. Вона працюватиме, але перейменуй за нашою звичкою: content/delivery-typo.Ви
Propose changes («запропонувати зміни»). Коміт потрапляє в нову гілку, а main зовсім не змінилася.Alex Tutor
Питання 3
Чому коміт Sofia йде в нову гілку, а не просто в main?
Alex Tutor
Propose changes веде на сторінку «Open a pull request»: base main, compare content/delivery-typo. Назва береться з повідомлення коміту, а опис пишеш ти.Ви
Alex Tutor
Create pull request. Це #168, і перевірки стартують одразу: build, test і preview з власним посиланням.Daniel
Alex Tutor
Ви
delivery.md у content/delivery-typo, додаю її рядок і комічу просто в цю гілку: «Mention loyalty points on delivery page».Daniel
Alex Tutor
Squash and merge: один коміт у main, гілку видалено, а деплой завершується за чотири хвилини.Alex Tutor
Fix courier typo and mention loyalty points#168
Злито в main через squash · мердж: Sofia · гілку content/delivery-typo видалено
Daniel
Схвалено
build
test
preview
deploy (production)
Завершився за чотири хвилини після мерджу
Alex Tutor
Питання 4
Розстав по порядку кроки зміни, зробленої в браузері: від відкриття файлу до живої сторінки.
Торкніться пункту, а потім місця, куди його поставити. Можна перетягувати або користуватися стрілками.
Ви
Alex Tutor
loyalty-points; Daniel вбудував цю перевірку в #157. А речення в pages/delivery.md жодного флагу навколо не має. Змерджено й викладено означає показано.Daniel
v1.4.1: фічу приховали, а один вхід до неї ні. І на рев'ю я цього теж не помітив.Ви
Alex Tutor
Питання 5
Чому клієнти бачать рядок про лояльність на сторінці доставки, хоча флаг loyalty-points вимкнений?
Alex Tutor
Conversation, поруч із позначкою, що його змерджено, є кнопка Revert (станом на 2026 рік).revert-168-content/delivery-typo з одним комітом, який робить рівно протилежне до #168, і готує для неї pull request.Daniel
Ви
Alex Tutor
Alex Tutor
c3f7a05Show points balance in the account (#166)v1.5.08d2b6e9Write loyalty programme page (#157)5e9a1b4Fix typo in courier note1a7c4f2Mention loyalty points on delivery pagecontent/delivery-typof3c8d21Fix courier typo and mention loyalty points (#168)a6b0e53Revert "Fix courier typo and mention loyalty points"revert-168-content/delivery-typod7e2f48Revert "Fix courier typo and mention loyalty points" (#169)main
Граф комітів, від найстарішого: Зміна та її revert у main 1. коміт c3f7a05 у main "Show points balance in the account (#166)", тег v1.5.0 2. коміт 8d2b6e9 у main "Write loyalty programme page (#157)" 3. гілка content/delivery-typo починається від коміту 8d2b6e9 4. коміт 5e9a1b4 у content/delivery-typo "Fix typo in courier note" 5. коміт 1a7c4f2 у content/delivery-typo "Mention loyalty points on delivery page" 6. коміт f3c8d21: content/delivery-typo змерджено в main через squash "Fix courier typo and mention loyalty points (#168)" 7. гілка revert-168-content/delivery-typo починається від коміту f3c8d21 8. коміт a6b0e53 у revert-168-content/delivery-typo "Revert "Fix courier typo and mention loyalty points"" 9. коміт d7e2f48: revert-168-content/delivery-typo змерджено в main через squash "Revert "Fix courier typo and mention loyalty points" (#169)" (виділено)
Alex Tutor
Питання 6
Кожен коміт у цій main уже викладено. Які зміни зараз на сайті?
a1Update shipping FAQa2Add spring sale bannera3Change footer phone numbera4Revert "Add spring sale banner"main
Граф комітів, від найстарішого: main іншого магазину, найновіше внизу 1. коміт a1 у main "Update shipping FAQ" 2. коміт a2 у main "Add spring sale banner" 3. коміт a3 у main "Change footer phone number" 4. коміт a4 у main "Revert "Add spring sale banner"" (виділено)
Ви
Alex Tutor
Daniel
Alex Tutor
Daniel
Ви
Alex Tutor
Питання 7
Зістав кожну ситуацію після мерджу з кращим способом її виправити.
Торкніться відповіді, а потім рядка, до якого вона належить. Можна й перетягувати.
- Змерджений банер показує неправильні дати розпродажу, а правильні ще уточнюють
- У змердженій відповіді FAQ одне неправильне число, а правильне відоме
- Останній мердж зламав оформлення замовлення для всіх, а причина незрозуміла
- Великий pull request з п'ятьма добрими змінами має одну дрібну помилку в тексті
Відповіді, які ще треба розмістити
Ви
content/courier-typo, один коміт «Fix typo in courier note», така сама назва. Лише одрук.Daniel
Alex Tutor
Ви
Alex Tutor
Питання 8Коротка відповідь · Завдання з перевіркою ШІ
Напиши Emma повідомлення в чат у 2–3 реченнях: чому її рядок про лояльність прибрали зі сторінки доставки, що зараз на сайті, і коли та як рядок повернеться. Запуск (флаг для всіх клієнтів) 10 листопада.
Напишіть відповідь і отримайте оцінку та відгук від нашого ШІ-рецензента.
Увійдіть, щоб отримати відгук ШІAlex Tutor
Ви
Daniel
Alex Tutor
Alex Tutor
Питання 9Кейс · Завдання з перевіркою ШІ
Сплануй зміну для issue #175 від початку до кінця.
Підтримка відкрила issue #175 «Returns FAQ still says 14 days». Фінансовий відділ підтвердив в issue: з понеділка клієнти можуть повернути нерозпечатаний корм протягом 30 днів замість 14.
pages/faq/returns.md, рядок 8: «You can return unopened food within 14 days.»config/returns.json:"returnWindowDays": 14. Оформлення замовлень читає це значення, щоб приймати чи відхиляти повернення в особистому кабінеті клієнта.
main захищена (лише pull requests, 1 схвалення, перевірки build і test); кожен мердж викладають за кілька хвилин; команда зливає через squash; гілки називають content/… і fix/….
Напиши план: що редагуєш власноруч, а що передаєш інженерам; кроки в браузері; назву гілки й повідомлення коміту; назву й опис pull request, зокрема як він пов'язаний з #175; хто переглядає і що ти перевіряєш до й після мерджу; і план скасування, якщо щось піде не так.
Напишіть відповідь і отримайте оцінку та відгук від нашого ШІ-рецензента.
Увійдіть, щоб отримати відгук ШІAlex Tutor
loyalty-points вмикають для всіх клієнтів, а за хвилину рядок Emma повертається на сторінку доставки окремим pull request. Ти закриваєш #147 як виконане.Ви
Daniel
Alex Tutor