Seamlessly Moving Fabric Notebooks Across Workspaces with Lakehouse Auto-Binding and Git Integration
With the new Lakehouse Auto-Binding capability in Notebook Git integration, Fabric can now intelligently preserve and resolve the binding between your notebooks and their attached Lakehouses as you move them across workspaces. This makes true multi-environment development and CI/CD workflows in Fabric significantly smoother and more reliable.
I am going to show you how to do this in the blog post below.
This came about because I am working with a customer who is looking to move their Fabric Capacity to a different region, and currently you cannot just re-assign the capacity. The items need to be re-created.
NOTE: This can also work if you want to move a notebook to a capacity in a different region!
Example:
- I have a notebook called “SE_MyLakehouse_Notebook” in my workspace called “Fabric PBI SE”
- I have a Lakehouse called MyLakehouse in this workspace
- I want to move the notebook to my production workspace called “ Fabric Australia East”
- NOTE: For this to work I MUST have the same Lakehouse name in my production workspace.
- I have a Lakehouse called MyLakehouse in this workspace
How to enable Lakehouse Auto-Binding on your notebooks
The first step is to enable the auto-binding for my notebook.
- Once I have my notebook created, I click on Settings

- I clicked on Git Settings
- I then selected “Lakehouse from source workspace”
- What this means is that when I move to another workspace it will use the lakehouse in the workspace I moved to.
Syncing the Notebook to Git from my Source Workspace
Next to move the notebook, I need to use Git for this to work.
NOTE: This is because I enabled the Auto-binding feature, I must sync it with Git for the metadata to be created and synced.
- I made sure that my workspace was connected to GIT

- I could then see in Source control that I have some items which have changed (including my notebook)
- I clicked on Source control
- I added a Commit message, selected my Notebook and clicked on Commit

- A quick tip, I wanted to view the changes in Azure Dev Ops, to do this I clicked on the “main” as shown below.

- I could then see the details in ADO

Syncing the Notebook to Git to my Destination Workspace
Now to get the notebook to work in my Destination workspace I need to sync it.
Yes I know typically this should be done via an ADO pipeline or another mechanism, for this blog post I want to show you how it works, so I am going to connect my destination workspace to the same Git Folder and branch.
- As shown below I am syncing to the same Git Folder and branch

- I clicked on Source Control
- I could then see my update; I clicked on Update all
Validating it works
To make sure that this works I had to make sure.
- In the source workspace I ran the code below with the associated output
- I then went into my destination workspace, which has got the identical code and ran the notebook and got the output below.
- As you can see the code still works in another workspace without me having to re-connect or configure the Lakehouse connection.
Summary
In this blog post I have shown you how to use the new auto binding feature for your notebooks to move friction free between workspaces.
Thanks for reading!
NOTE: This was written by a human, some research was done using various LLMs


