I used AI tools to help draft and edit this post. I checked the facts and the wording, and the original lives at geekindata.com . The diagrams are on that page.
Git change versus deploy surface
Key takeaways
Treat Fabric deploy as workspace surgery: item graph, stable ids, and a written never-blind list.
Git reports the source delta; the deployer reports what it will reconcile. Those sets are related, not identical.
Keep workspace, lakehouse, and connection GUIDs in config. Display names are labels.
Parameterize connections and deployment rules so Prod does not inherit Dev bindings.
Group by release train; exclude or specially handle connection-sensitive item types.
Prove filters, substitution, and connection resolution in a disposable sandbox before shared stages.
Your pipeline runs. You did not touch half the notebooks. They still publish.
That is not always a bug in your YAML. Fabric deployment models and item pairing often optimize for workspace consistency, not git-style minimal diffs.…