Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

🏠 Back to Blog

Tool School: GitHub 101 (GitHub is the New Google Drive)

Authors: Hannah Stulberg and Sidwyn Koh | Published: 2026-02-27

Everything needed to start using GitHub – no coding required. Applies to any AI coding tool (Claude Code, Cursor, Antigravity, Codex).

Core Metaphor: GitHub is the New Google Drive

GitHubGoogle Drive Equivalent
RepositoryShared folder
CommitSave
BranchYour copy
MainThe original
Push/PullSync
Pull Request“Review my edits”

Setup Checklist

  1. GitHub account – github.com/signup
  2. Git installedxcode-select --install (Mac) or Git for Windows
  3. Git configured – set name and email matching your GitHub account
  4. SSH keys – “keycard” metaphor. Key pair: private stays local, public goes to GitHub. Generate with ssh-keygen -t ed25519
  5. GitHub CLI (gh) – interact with GitHub from terminal. Install from cli.github.com, auth with gh auth login
  6. GitHub MCP (optional) – gives Claude Code direct GitHub API access

The Daily Workflow (6 Steps)

  1. Get to your branch – pull latest main + create new branch, or switch to existing
  2. Make your edits
  3. Commit – save a snapshot with descriptive message. Commit early, commit often
  4. Push – upload to GitHub. Until you push, work only exists locally
  5. Open a pull request – “here are my changes, please review”
  6. Merge – combine into the official version

Key Concepts

Branches

  • Your own parallel copy of the project
  • Main = trusted official version. Never edit it directly
  • Name descriptively with lowercase and hyphens

Pulling (Two Scenarios)

  • Someone pushed to your branch – pull to sync
  • Main moved forward – pull main into your branch via merge (safe) or rebase (clean history, only when solo)

Stashing

  • git stash / git stash pop – temporarily set aside uncommitted changes when switching branches

Commits

  • Two parts: review changes (git status, diff view), then save
  • Messages: short, specific. Each commit = one coherent change

Pull Requests

  • Creating a PR = “here are my changes, please review”
  • Claude Code can write the PR title and description
  • Add reviewers who know the area. Be specific, be kind in reviews

Merging

  • Squash and merge (recommended) – combines all commits into one clean commit
  • After merging, delete the branch

Merge Conflicts

  • When two people change the same lines. Not a bug, not your fault
  • Claude Code can resolve them
  • Prevention: pull main into your branch regularly

Common Errors

ErrorCauseFix
“Your branch is behind”Local copy out of dategit pull
“Merge conflict”Same lines changed by two peopleResolve manually or with Claude
“HEAD detached”Checked out a commit, not a branchgit checkout main
“Permission denied (publickey)”SSH key issueRevisit SSH setup
Nested repoCloned inside another repoMove repos side-by-side

Important Rules

  • Don’t put repos inside cloud storage sync folders (conflicts with Git internals)
  • Don’t clone a repo inside another repo (nested repos cause tracking conflicts)
  • Keep repos side-by-side in a single folder like ~/projects
  • If you commit an .env file, those secrets are in commit history forever