Get to Know GitHub 4: Hands-on
Slide 10 (Your turn: open a pull request). 0:22 to 0:37, with a hard stop at 0:37. In pairs, in the shared practice repo, github.com/aimclear/github-practice.
What this section has to do
Everyone opens one pull request and reviews one. Fifteen minutes goes fast with 18 people, so this doc is mostly logistics: what has to be true before Thursday and how to keep the room moving.
Prep checklist (before Thursday)
Accounts and access
- Everyone has a GitHub account, has accepted the AIMCLEAR org invite, and has 2FA on. On Thursday they sign in with that same invited account. Skip this and the hands-on turns into 15 minutes of password resets. Send a reminder by Tuesday with a "reply when done" ask.
- Make sure members can create repos in the org, or the "Done early?" step and the homework stall.
The practice repo
- A README that says what the repo is for, plus a
people/folder with a placeholder file in it, since Git can't hold empty folders. - The Gitleaks workflow, so GitHub checks every push for keys, browser uploads included.
- Main protected by the AIMCLEAR org rule the dev team sets up, matching what people saw in the demo: PRs required, one approval, conversations resolved. Confirm the rule covers this repo.
- Write access for everyone attending.
The template repo
- Confirm github.com/aimclear/employee-repo-template has Template repository turned on (Settings, General).
- Confirm it has the Gitleaks workflow, so every repo made from it brings the check along.
- Its
scripts/folder has a placeholder file in it, since Git can't hold empty folders. - A template copies files and branches only, not settings or branch protection. The AIMCLEAR org rule is what protects main in each new repo.
The room
- Pairs posted in the Meet chat before you start. Pair people across teams where you can, and make one trio if the count is odd. Re-post them in the chat at 0:22.
- One or two dev team helpers in the chat, each watching a group of pairs.
- The practice repo link, github.com/aimclear/github-practice, ready to paste.
- No Meet breakout rooms, since they need host setup and aren't recorded. If a pair needs to talk, they use a 1:1 Meet link.
Steps people follow
- Open the shared practice repo, github.com/aimclear/github-practice (the link is in the chat). Make sure you're signed in to the GitHub account that was invited to AIMCLEAR. It's one repo for the whole group, so pairs can review each other's PRs. Your own repo comes after.
- Add file > Create new file. Name it
people/firstname-lastinitial.md, for examplepeople/laura-w.md. AIMCLEAR has two Lauras, two Joes, and Tim H plus Timothy, so the last initial keeps names from clashing. - Three lines: your name, your team, and one script or AI tool you've built or want to build.
- Click Commit changes..., choose Create a new branch for this commit and start a pull request, and name the branch
add-firstname-lastinitial(for exampleadd-laura-w). Then click Propose changes. - Click Create pull request. Then click the gear icon next to Reviewers, on the right side, and pick your partner.
- Review your partner's PR as practice. Open Files changed, leave one comment, then click Submit review (older layout: Review changes), choose Approve, and Submit review. Approve only, and don't click Merge.
- I'll merge a few live so everyone sees it land. If a line comment needs resolving before merge, I'll resolve it, then merge.
Done early? Make your own repo from AIMCLEAR's template: open github.com/aimclear/employee-repo-template, hit Use this template > Create a new repository, set Owner to AIMCLEAR, and choose Private. Then upload a script you've already checked for keys into scripts/ on a new branch and open a PR for it. The template brings the Gitleaks check along, so GitHub checks every push for keys and passwords before anything gets merged into main. If it flags something, stop and ask the dev team. A flagged key has already left your laptop, so it still needs rotating (the old key gets turned off and a new one is made).
Timing
| Minute | What should be happening |
|---|---|
| 0 to 2 | Pairs re-posted in the chat. Everyone has the repo open. Helpers chase anyone who can't get in |
| 2 to 7 | Files created, branches named, PRs opened |
| 7 to 12 | Reviews: one comment, then approve |
| 12 to 15 | You merge three or four live. Call out a good comment if you see one |
At minute 12, stop the room even if some pairs aren't done. They can finish after. Hard stop at minute 15 (0:37).
Common snags and fixes
| Snag | Fix |
|---|---|
| "I don't see the repo" | They haven't accepted the org invite, or they're signed in to a different GitHub account than the one invited to AIMCLEAR. Check the avatar, top right. Still stuck: their partner shares their screen and drives, and they follow along |
| No Add file button | They don't have write access. A helper adds them |
| Can't request their partner | The partner hasn't accepted the org invite yet. Pick a helper as reviewer instead |
| Committed to the wrong branch name | Doesn't matter. Keep going |
| Two people made the same file name | Rename one in the PR before merging, or merge one and close the other |
| Approve button greyed out | They're on their own PR. Swap to the partner's |
| Merge blocked | An unresolved comment, or no approval yet. Same as the demo |
| Gitleaks fails on an upload | Stop. Don't merge. Helper checks what it flagged. A real key has already left the laptop, so it gets rotated (the old key gets turned off and a new one is made) and the file gets fixed before anything else |
| Branch name already exists | Add your last initial (or another letter) |
| Can't find Propose changes | In the Commit changes window, choose Create a new branch for this commit and start a pull request. The green button then reads Propose changes |
| 2FA prompt | They enter the code from their authenticator app. If 2FA was never set up, a helper walks them through it while the partner drives |
| Gitleaks check pending / Waiting for a runner | Keep going. Timothy merges after |
Helpers' brief (paste in the helpers' DM)
Watch the chat. Answer with the button name, not an explanation. If someone's stuck more than two minutes, send them a 1:1 Meet link to screen share (no Meet breakout rooms, since they need host setup and aren't recorded). If someone can't get into the repo, their partner shares their screen and drives, and they follow along. If the Gitleaks check shows pending or Waiting for a runner, tell them to keep going. Don't merge anything yourself, Timothy merges live. If Gitleaks flags anything, tell Timothy right away.
Done when
Every attendee has one PR opened and one review left, and the room has watched a few merge.