← Back to trackModule: Git for Real Work (Week 2)

BEGINNER · Medium · 60m

Branching strategies you will see on the job

Foundations Bootcamp

Lesson notes

Goal

Understand common branching strategies and when to use each.

Idea: main stays deployable; branches are short-lived.

Pattern:

  • small branches
  • frequent merges
  • feature flags for incomplete work

Strategy 2: GitFlow (common in slower release cycles)

Branches:

  • main production
  • develop integration
  • release/* stabilization
  • hotfix/* urgent production fixes

Strategy 3: Release branches (middle ground)

Idea: cut a release branch when needed, keep main moving.

Hotfix pattern (always)

git checkout -b hotfix/critical main
git commit -am "Fix critical bug"
git push -u origin hotfix/critical

Merge into main and any release branch.

How to choose (simple)

  • small team, frequent deploys: trunk-based
  • regulated, slow release cadence: release branches or GitFlow
  • if you are unsure: trunk-based + release branches when needed

Exercises

  1. Simulate a hotfix branch.
  2. Merge it into main.
  3. Compare squash vs merge commits.

Next Step

Now connect Git to CI/CD: every merge should trigger build/test.

View full outline

Outline

Use the outline to jump to any topic.

Track tools

Search lessons, continue where you left off, and track completion.

Modules

3

Lessons

9

Estimated Time

515m

Completion

0%

0/9 lessons

Your progress: 0%

Complete a lesson to increase progress

Outline

Open a lesson for full notes. Mark completed to update your progress.

Goal: By the end of this lesson you will be able to move around any Linux server quickly, understand where you are, and find what you need without guessing. This is not about memorizing commands. It is about building a m…

Goal: Understand Linux permissions well enough to fix "permission denied" problems quickly and safely. The Mental Model Every file/folder has: an owner (user) a group permissions for user/group/others Read it as: first c…

Goal: Control services confidently and read logs like an operator. What systemd is (simple) systemd is the service manager on most modern Linux distros. It starts services, restarts them, manages dependencies, and record…

Goal: Use Git the way teams actually work: small commits, feature branches, pull requests, reviews, and safe merges. The Workflow (end to end) Steps: 1. Sync with main 2. Create a branch 3. Commit small changes 4. Push b…

Goal: Recover from Git mistakes without losing work or breaking shared history. The Rule If the commit is already pushed and others might have it: prefer git revert (safe) If it is only local (not pushed): git reset is f…

Goal: Understand common branching strategies and when to use each. Strategy 1: Trunk based (recommended for fast teams) Idea: main stays deployable; branches are short lived. Pattern: small branches frequent merges featu…

Goal: Understand the minimum networking needed to debug real production issues: DNS, ports, HTTP, and TLS. The 4 step model When a request fails, check: 1. DNS: can we resolve the name? 2. Network: can we reach the IP/po…

Goal: Turn messy logs into clear answers using grep/awk/sed and a few patterns you will reuse forever. grep (search) Tips: n : show line number R : recursive E : regex i : case insensitive awk (extract columns) Common us…

Goal: Write a safe, reusable script that checks a service, collects logs, and prints a clean summary. Script building blocks variables functions exit codes strict mode (optional) Example: service health script Make it ex…