Your first change in the browser, and how to undo it
Make a small change entirely in the GitHub web UI: find the file, edit it, commit to a new branch because main is protected, open a pull request, pass checks and review, merge and deploy. Then undo a merged change with the Revert button, learn when to revert and when to fix forward, and what a PM should and shouldn't edit.
Lesson 15 of 15~38 min of learningIncludes ~24 min for questions and tasks
Contents1 of 66 steps
Alex Tutor
You
Daniel
Alex Tutor
.md files, the FAQ, the README, issue templates. And it all still goes through a pull request.Daniel
.tsx files, config/prices.json, anything in .github/workflows/. One missing comma in a config file can stop the whole site from building.You
config/prices.json is just a number?Daniel
Alex Tutor
Question 1
Which of these changes can Sofia make without an engineer, in the browser and through a pull request? Select all that apply.
Alex Tutor
Code tab. Open the pages folder, then delivery.md. Or press t and type "delivery" to search by file name.You
main.Alex Tutor
Edit this file as of 2026. It opens GitHub's web editor, right in the browser.Daniel
Alex Tutor
Preview tab to see the text as it will look on the page, not as raw Markdown.Alex Tutor
Alex Tutor
Question 2
Pressing the pencil icon on a file in main creates a new branch straight away, and every keystroke is saved to it.
Alex Tutor
Commit changes… button. A dialog opens with a commit message, an optional extended description, and a choice of where the commit goes.You
Daniel
Alex Tutor
main branch" isn't open to you: branch protection lets changes into main only through pull requests. So pick "Create a new branch for this commit and start a pull request".Daniel
catchow-sofia-patch-1. It works, but rename it to our habit: content/delivery-typo.You
Propose changes. The commit lands on the new branch, and main hasn't changed at all.Alex Tutor
Question 3
Why does Sofia's commit go to a new branch instead of straight into main?
Alex Tutor
Propose changes leads to "Open a pull request": base main, compare content/delivery-typo. The title comes from the commit message; the description is yours to write.You
Alex Tutor
Create pull request. It's #168, and the checks start at once: build, test, and preview with its own link.Daniel
Alex Tutor
You
delivery.md on content/delivery-typo, add her line and commit straight to that branch: "Mention loyalty points on delivery page".Daniel
Alex Tutor
Squash and merge: one commit on main, the branch deleted, and the deploy finishes four minutes later.Alex Tutor
Fix courier typo and mention loyalty points#168
Squash-merged into main by Sofia · branch content/delivery-typo deleted
Daniel
Approved
build
test
preview
deploy (production)
Finished four minutes after the merge
Alex Tutor
Question 4
Put the steps of a change made in the browser in order, from opening the file to the live page.
Tap an item, then tap where it should go. You can also drag or use the arrows.
You
Alex Tutor
loyalty-points flag; Daniel built that check into #157. A sentence in pages/delivery.md has no flag around it. Merged and deployed means shown.Daniel
v1.4.1: the feature was hidden, one way into it wasn't. And I missed it in review too.You
Alex Tutor
Question 5
Why do customers see the loyalty line on the delivery page, even though the flag loyalty-points is off?
Alex Tutor
Conversation, next to the note that it was merged, there's a Revert button, as of 2026.revert-168-content/delivery-typo, with one commit that does the exact opposite of #168, and prepares a pull request for it.Daniel
You
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
Commit graph, oldest first: The change and its revert on main 1. commit c3f7a05 on main "Show points balance in the account (#166)", tagged v1.5.0 2. commit 8d2b6e9 on main "Write loyalty programme page (#157)" 3. branch content/delivery-typo starts from commit 8d2b6e9 4. commit 5e9a1b4 on content/delivery-typo "Fix typo in courier note" 5. commit 1a7c4f2 on content/delivery-typo "Mention loyalty points on delivery page" 6. commit f3c8d21: content/delivery-typo squash-merged into main "Fix courier typo and mention loyalty points (#168)" 7. branch revert-168-content/delivery-typo starts from commit f3c8d21 8. commit a6b0e53 on revert-168-content/delivery-typo "Revert "Fix courier typo and mention loyalty points"" 9. commit d7e2f48: revert-168-content/delivery-typo squash-merged into main "Revert "Fix courier typo and mention loyalty points" (#169)" (highlighted)
Alex Tutor
Question 6
Every commit on this main has been deployed. Which changes are live on the site now?
a1Update shipping FAQa2Add spring sale bannera3Change footer phone numbera4Revert "Add spring sale banner"main
Commit graph, oldest first: main of another shop, newest at the bottom 1. commit a1 on main "Update shipping FAQ" 2. commit a2 on main "Add spring sale banner" 3. commit a3 on main "Change footer phone number" 4. commit a4 on main "Revert "Add spring sale banner"" (highlighted)
You
Alex Tutor
Daniel
Alex Tutor
Daniel
You
Alex Tutor
Question 7
Match each situation after a merge with the better way to undo it.
Tap an answer, then tap the row it belongs to. You can also drag.
- A merged banner shows the wrong sale dates, and the right dates are still being confirmed
- A merged FAQ answer has one wrong number, and the right one is known
- The last merge broke checkout for everyone, and the cause is unclear
- A big pull request with five good changes has one small copy mistake
Answers left to place
You
content/courier-typo, one commit "Fix typo in courier note", the same title. Only the typo.Daniel
Alex Tutor
You
Alex Tutor
Question 8Short answer · AI-checked task
Write Emma a 2–3 sentence chat message: why her loyalty line was removed from the delivery page, what is live now, and when and how the line comes back. The launch (flag on for all customers) is on 10 November.
Write your answer and get a score with feedback from our AI reviewer.
Log in to get AI feedbackAlex Tutor
You
Daniel
Alex Tutor
Alex Tutor
Question 9Case · AI-checked task
Plan the change for issue #175 from start to finish.
Support opened issue #175 "Returns FAQ still says 14 days". Finance confirmed in the issue: from Monday customers can return unopened food within 30 days instead of 14.
pages/faq/returns.md, line 8: "You can return unopened food within 14 days."config/returns.json:"returnWindowDays": 14. The checkout reads this value to accept or refuse returns in the customer's account.
main is protected (pull requests only, 1 approval, checks build and test); every merge is deployed within minutes; the team squash-merges; branch names follow content/… and fix/….
Write your plan: what you edit yourself and what you hand over; the steps in the browser; the branch name and commit message; the pull request title and description, including how it links to #175; who reviews and what you check before and after the merge; and your undo plan if something goes wrong.
Write your answer and get a score with feedback from our AI reviewer.
Log in to get AI feedbackAlex Tutor
loyalty-points goes on for all customers, and a minute later Emma's line is back on the delivery page, in its own pull request. You close #147 as completed.You
Daniel
Alex Tutor