Feature Branches

Isolated development, safe merging, and working as a team

The Problem with Sharing

So far, everyone works in one Dev workspace and commits straight to main

Dev Workspace
Alice editing notebook
Bob editing report
Carol fixing model
Commit
main branch
Half-finished features
Overwritten changes
Broken deployments

In traditional dev, everyone has their own machine. In Fabric, workspaces are shared — so we need another way to isolate work.

Inner Loop vs Outer Loop

Two development cycles that shape how you work:

🔁 Inner Loop

Code → Test → Fix → Repeat
Your personal dev workspace
Fast — seconds to minutes
Private — just you

🚀 Outer Loop

Commit → Review → Deploy
Git repo + deployment pipeline
Slower — minutes to hours
Shared — team and users

The challenge: In Fabric, workspaces are shared — so each developer needs their own workspace and own branch to get a private inner loop.

Feature Branches + Workspaces

Each developer gets their own branch and their own workspace

Alice-Dev
feature-sales-report
Bob-Dev
feature-fix-model
Pull Request
🔒 CI Workspace
main (merged code)
Read only — no direct commits
Deploy
Prod
main (via pipeline)
  • Branch policies block direct commits to main
  • Pull requests are the only way in — with review and approval
  • Branch out in Fabric creates the branch + workspace in one step
  • Done? Delete the branch in GitHub — or keep your workspace and switch it to the next feature branch

What You'll Do in Section 4

1
Learn about inner loop (your dev cycle) vs outer loop (team deployment)
2
Configure branch policies to protect main
3
Create a feature branch and workspace with Branch out
4
Merge your work with a pull request and clean up

Let's get started!