Git Foundations
Git Foundations picks up where JavaScript Foundations left off. The Summit Trail Outfitters site you built is complete — structured, styled, and interactive. Now you will learn to track its history, work safely on new features without breaking working code, and publish it to GitHub as a professional portfolio piece.
What you will learn
Section titled “What you will learn”- What version control is and why every developer uses it
- Installing Git and configuring your identity
- The three-area model: working tree, staging area, and repository
- Making commits and reading history with
git log - Creating, switching, and merging branches
- Undoing mistakes — discarding changes, unstaging files, reverting, and resetting
- The difference between Git and GitHub, and how they connect
- Pushing and pulling between a local repo and a remote
- The pull request workflow used on real teams
- Publishing the STO site to GitHub as a portfolio repository
Prerequisites
Section titled “Prerequisites”This course assumes you have completed JavaScript Foundations or have equivalent knowledge. You should be comfortable writing HTML, CSS, and JavaScript, working with files in a terminal or file explorer, and using a code editor. No prior experience with Git or version control is required.
The practice repository
Section titled “The practice repository”Most exercises in this course use a dedicated practice repository — a folder on your machine where you can run commands safely without affecting the STO site. Module 07 switches to the real STO project and publishes it to GitHub.
Modules
Section titled “Modules”01 — Getting Started with Git
Section titled “01 — Getting Started with Git”- What Is Version Control and Why It Matters
- Installing and Configuring Git
- Initializing Your First Repository
- The Working Tree, Staging Area, and Repository
- Making Your First Commit
- Module Recap
02 — Commits and History
Section titled “02 — Commits and History”- git status — Reading the Working Tree
- git diff — Seeing What Changed
- The Staging Area in Depth
- Commit Messages That Communicate Intent
- git log — Reading History
- Module Recap
03 — Branching
Section titled “03 — Branching”- What Branches Are and Why They Matter
- Creating and Switching Branches
- Merging Branches
- Branch Naming Conventions and Strategies
- Deleting Merged Branches
- Module Recap
04 — Undoing Changes
Section titled “04 — Undoing Changes”- Discarding Working-Tree Changes
- Unstaging Files
- Amending the Last Commit
- git revert — Undoing a Commit Safely
- git reset — Rewinding History
- Module Recap
05 — Working with GitHub
Section titled “05 — Working with GitHub”- Git vs GitHub
- Creating a Repository on GitHub
- Connecting a Local Repo to GitHub
- Pushing and Pulling
- Cloning a Repository
- Module Recap
06 — Pull Requests and Collaboration
Section titled “06 — Pull Requests and Collaboration”- What Is a Pull Request?
- Creating a Pull Request
- Reviewing and Merging a Pull Request
- Merge Conflicts in Pull Requests
- Pull Request Best Practices
- Module Recap