Stage 2 of 8 · 9 lessons · ~4 weeks
Git and GitHub as your portfolio
Put every program you write on GitHub from the first semester. By final year your commits, READMEs and profile say more about you than your transcript does.
Start: Commits and the staging areaLessons· one lesson for each topic, in this order
Do this
- Apply for the GitHub Student Developer Pack with your university email
- Create a profile README: who you are, what you are learning and your best two projects
- Push every program from this semester, each with a README that says what it does and how to run it
- Write commit messages that say why, not "update" or "final final"
- Work on a feature branch and merge through a pull request, even when you work alone
- Make your first pull request to the First Contributions repository
Start with· follow one of these
- GitHub repoFreeGitHub Skills: Introduction to GitHub
GitHub · Beginner
Free hands-on exercise: branch, commit, open and merge a pull request in about an hour
- CourseFreeThe Missing Semester of Your CS Education
MIT · Beginner
MIT lectures on the tools degrees skip; the shell and version control lectures are enough here
Practise
Keep handy
Also worth your time
How to choose, structure and present projects so a reviewer sees your best work first
Before moving on: Have a GitHub profile with a profile README, at least five repositories with a README each, and one pull request you opened and merged from a feature branch.

A recruiter looking at a student has almost nothing to go on, so steady commits and clear READMEs do real work for you. Learn about ten commands well: add, diff, status, commit, log, branch, stash, fetch, pull and push. Never upload copied assignment code, and never push passwords or API keys.