Skip to content

The Hubbub of GitHub

We’ve mastered Git on our own machine — now it’s time to take our work to the cloud and join the world’s biggest developer collaboration space: GitHub.

Git tracks changes on your computer.
GitHub stores those changes online — like a social network for code.


GitHub is a remote host for Git repositories — a place where developers can:

  • Store their code safely off their computer
  • Share projects publicly or privately
  • Collaborate with others via branches, pull requests, and issues
  • Keep everything versioned and organized across devices

Think of Git as your journal, and GitHub as the library where it’s published and shared.

ASCII time machine, cloud edition:

Local Repo (Your Computer)
│ push ↑ pull ↓
Remote Repo (GitHub Cloud)

💡 Professor Solo’s Pro Tip:
Git works perfectly fine offline.
GitHub just makes sharing and backup ridiculously easy.


🧱 Step 1: Create a Repository on GitHub

Section titled “🧱 Step 1: Create a Repository on GitHub”
  1. Log into github.com
  2. Click New repository
  3. Give it a name like my-first-repo
  4. Leave it emptyno README, no .gitignore, no license (yet)
  5. Click Create repository

GitHub will give you a page full of helpful setup instructions.
We’ll use those commands next.


If we’ve already created a local repo, link it to GitHub:

Terminal window
git remote add origin https://github.com/your-username/my-first-repo.git

💡 The name origin is Git’s default nickname for your remote repo.
You can rename it later, but almost everyone just leaves it as “origin.”

Then, set your main branch (if you haven’t already):

Terminal window
git branch -M main

Finally, push your local commits to the cloud:

Terminal window
git push -u origin main
  • push = “send my commits to the remote server”
  • origin = “the remote location we just linked”
  • main = “the branch we’re sending”
  • -u = “set this as my default push/pull relationship”

Now, when we use git push or git pull, Git will know exactly where to send or fetch changes.


To verify we’re connected to the right place:

Terminal window
git remote -v

We’ll see something like:

origin https://github.com/your-username/my-first-repo.git (fetch)
origin https://github.com/your-username/my-first-repo.git (push)

That means Git knows where our remote repo lives.


Once we’ve connected, collaboration (even with ourselves) follows a simple cycle:

Local → GitHub → Local
edit → add → commit → push
pull → update → repeat
ActionCommandWhat It Does
Send commits to GitHubgit pushUploads local history
Get new commits from GitHubgit pullMerges remote updates
Check for changes without merginggit fetchPreviews updates

⚠️ Caution:
Always pull before pushing — it keeps our history aligned with the remote version.


When we want to start with someone else’s project (or a backup of our own):

Terminal window
git clone https://github.com/your-username/my-first-repo.git

This command downloads:

  • All files
  • Full history of commits
  • The connection to the remote

ASCII recap:

GitHub (remote repo)
Local copy (clone)
└── commits, branches, history included

Now we can edit locally, commit, and push changes right back to GitHub.


By now, we can:

  1. Create a GitHub repository from scratch
  2. Connect a local repo to a remote
  3. Push and pull changes confidently
  4. Clone a remote repository and explore its history
  5. Understand how Git and GitHub sync their timelines

💡 Professor Solo says:

“Git keeps you organized. GitHub makes you unstoppable.
Welcome to the hubbub.”