Programming foundations
Collaborate with Git and GitHub
Branch, commit, review PRs, write READMEs and keep a public portfolio employers can inspect.
~8 focused hours·beginner
Tools: Git, GitHub, GitHub CLI (gh), pre-commit, GitHub Issues/Projects
Market relevance — share of job ads asking for this
Prerequisite capability — not asked for directly, but needed for others.
What employers mean
You should be able to…
- Branch off main for every feature/fix instead of committing straight to main
- Write commit messages that explain why, not just what
- Open a pull request with a clear description, and respond to review comments
- Resolve a merge conflict without losing either side's changes
- Keep a public GitHub profile/README that a recruiter can skim in under a minute
- Use git rebase or squash to keep history clean before merging
- Tag releases and write a CHANGELOG for a project others depend on
Learn — free, link-checked
The few resources that matter
Read · beginner · 20 min · docs.github.com
Creating a pull request
The exact mechanics of opening a clean PR that reviewers can act on — what recruiters actually look at on your GitHub profile. — GitHub Docs
Read · beginner · 30 min · roadmap.sh
Git and GitHub Roadmap
A visual checklist of exactly which Git/GitHub skills to learn in order, so you don't waste time on commands you'll never use. — roadmap.sh
Watch · beginner · 70 min · youtube.com
Git and GitHub for Beginners - Crash Course
Hands-on crash course covering branches, merges and PRs — enough to collaborate on a real repo by the end. — freeCodeCamp.org
Practice
Public Portfolio Repo with a Real PR Trail
Take any small tool you've built (or the API/CLI from another capability) and push it to a public GitHub repo with a proper README (setup, usage, architecture diagram). Open at least 5 real feature/fix PRs against your own main branch over separate commits, each with a description and a self-review comment, and protect main with required status checks.
Done when
- Repo has a README with setup instructions that a stranger could follow to run the project
- At least 5 merged PRs, each on its own branch with a descriptive title and body
- main branch is protected — direct pushes are blocked, PRs are required
- At least one PR shows a resolved review comment thread or a rebase to clean up history
Prove it
Evidence a recruiter can check
- Public GitHub repo URL with visible PR history and a clean commit log
- README that documents architecture and how to run/test the project
- Screenshot or link showing branch protection rules enabled on main
Interview
Questions you'll get asked
- Walk me through what you do when you get a merge conflict on a shared branch.
- What's the difference between `git merge` and `git rebase`, and when would you use each?
- How do you undo a commit that's already been pushed to a shared branch?
- What makes a good pull request description that speeds up review?
- How would you structure commits for a large feature so reviewers can follow the story?
- What's in your .gitignore for a Python/Node project and why does it matter?
- Tell me about a PR review comment that changed how you wrote the code.