🐙 GitHub Workflow: Repository, Remote, Pull Request, Review
GitHub Workflow: Repository, Remote: GitHub is the air traffic control tower for your team's code: every pilot (developer) has their own runway (branch), but before any plane lan
GitHub is the air traffic control tower for your team's code: every pilot (developer) has their own runway (branch), but before any plane lands on the main runway (main), the tower approves the flight path, checks for conflicts with other aircraft, and only then clears landing. The "why" question that unlocks real understanding: if Git already lets you push to main directly, why does GitHub add this entire pull request layer on top? Because Git is a solo tool — it only tracks history; GitHub is the collaboration protocol that enforces review, runs automated checks, and creates an audit trail that answers "who approved this security patch and what did the CI report look like when it merged?" Java analogy: GitHub's repository model is like Maven Central with access control — pushing to it requires authentication, versioning, and meeting standards, not just copying a jar onto a server. In QA automation, the GitHub workflow catches test files pushed without running locally, detects secrets accidentally included in environment setup scripts, and provides the paper trail needed for compliance audits.
Animate a Real Pull Request Flow
Follow a test branch from local work to PR, review, CI checks and merge.
Try It Yourself: Branch ready for a PR
Create a feature branch, commit, push, and get ready to open a PR.
Refresh remote information
Create a new feature branch
Stage only the relevant test file
Commit with test intent
Push the branch to GitHub with upstream
🎬 origin/main: The Last Known Photo of the Remote
Your local repo already exists, but it does not know about its GitHub counterpart yet — no link has been established between them.
`git remote add origin` introduces a remote ADDRESS to the local chain. `origin` is just a nickname — it tells Git "your cloud counterpart lives here".
`git push` COPIES local commits to the cloud. Until this moment everything lived only on your machine — now the team can see it too.