Opening a PR That Deserves to Be Merged
A real branch, open since Lesson 2.1.1 and never reviewed — finally getting a real PR.
This offline sandbox genuinely has no GitHub, no network, no web UI — confirmed directly, nothing to fake around here. But a PR is not a GitHub invention: long before GitHub existed, git shipped its own real mechanism for exactly this — "here is what I changed, here is where to pull it from, please review and merge it."\n\ngit request-pull generates that real, complete summary directly from actual history: the commit range, a genuine diffstat, and every real commit grouped by its actual author. This is, literally, what a "PR description" is — GitHub's button just wraps this same real information in a web page.
Before Opening Anything, Check What's Actually In It
git log --oneline master..feature/dessert-menu
git diff master...feature/dessert-menu --stat
A real PR should never surprise its reviewer — knowing exactly what commits and what files are included, before asking anyone to review them, is the same real diligence a "Files changed" tab exists to support.
The Real, Original PR Mechanism
git request-pull master ../recipes-origin.git feature/dessert-menu
This generates the real, complete text any PR description fundamentally is: the commit this branch started from, where to fetch the real changes, a genuine diffstat, and every actual commit grouped by its real author.
What GitHub's Button Actually Does
GitHub's "Open pull request" button is a real, convenient web wrapper around exactly this same information — the same commit range, the same diffstat, the same author list — just rendered in a browser instead of a terminal. Knowing the real mechanism underneath means never being lost when working with git anywhere a GitHub-style web UI is not available.
git request-pull
Generates a real, complete textual pull request: the commit the branch diverged from, the real remote and branch to fetch from, a genuine diffstat, and every actual commit grouped by author. Confirmed directly in this lab: this is git's own original mechanism for exactly what a PR is, predating GitHub itself.
Three-dot diff (A...B)
Compares B against its real merge-base with A, showing only what B actually adds — not changes that happened independently on A. Confirmed directly in this lab: this is the real comparison a PR's "Files changed" view is built on.
🔍 Check What Would Actually Be Included
Switch to the branch and see its real, genuine content before opening a PR for it.
cd ~/team-recipes && git switch feature/dessert-menucd ~/team-recipes && git log --oneline master..feature/dessert-menucd ~/team-recipes && git diff master...feature/dessert-menu --statstudent@lab:~$ cd ~/team-recipes && git switch feature/dessert-menu Switched to branch 'feature/dessert-menu' Your branch is up to date with 'origin/feature/dessert-menu'. student@lab:~$ cd ~/team-recipes && git log --oneline master..feature/dessert-menu be66915 (HEAD -> feature/dessert-menu, origin/feature/dessert-menu) Merge remote-tracking branch 'origin/master' into feature/dessert-menu f7cdea9 Add creme brulee recipe 390d424 Add panna cotta recipe 5a42f5c Add tiramisu recipe student@lab:~$ cd ~/team-recipes && git diff master...feature/dessert-menu --stat creme-brulee.md | 3 +++ panna-cotta.md | 3 +++ tiramisu.md | 3 +++ 3 files changed, 9 insertions(+)
📨 Open the Real PR
Generate the real, complete pull request description with git's own original mechanism.
cd ~/team-recipes && git request-pull master ../recipes-origin.git feature/dessert-menustudent@lab:~$ cd ~/team-recipes && git request-pull master ../recipes-origin.git feature/dessert-menu The following changes since commit c09803f205c60909c68e38574608028c8c0e5157: Add trail mix recipe (2026-01-01 06:00:00 +0000) are available in the Git repository at: ../recipes-origin.git feature/dessert-menu for you to fetch changes up to be669152c10e6f9ad36db024e7d0efe451302499: Merge remote-tracking branch 'origin/master' into feature/dessert-menu (2026-01-01 06:10:00 +0000) ---------------------------------------------------------------- Ada Lovelace (2): Add creme brulee recipe Merge remote-tracking branch 'origin/master' into feature/dessert-menu Frank Chen (2): Add tiramisu recipe Add panna cotta recipe creme-brulee.md | 3 +++ panna-cotta.md | 3 +++ tiramisu.md | 3 +++ 3 files changed, 9 insertions(+) create mode 100644 creme-brulee.md create mode 100644 panna-cotta.md create mode 100644 tiramisu.md
Lab 2.5.1 complete. A real, long-dangling branch finally got a real, complete PR description:\n\n\n Branch content reviewed : ✅ 4 commits, 3 files, no surprises\n Real PR description made : ✅ git request-pull\n
Enable JavaScript to run the live terminal and track your progress.