top of page
Jihwan Kim

Learning to Configure Source Control for an Existing Power BI Workspace and Locating the .pbix File

Updated: Nov 6, 2023

In this writing, I like to share how I learn configuring Source Control and Git Integration for an existing Power BI workspace. Join me as I unravel the challenges I encountered and conquered, paving the way for seamless Power BI development.


The introduction of the Git Integration feature for Fabric and Premium workspaces has been a game-changer. It promises robust source control for Power BI developers, and I tried to implement this for some of my existing dev-workspaces in deployment pipelines.


However, my initial foray into this brave new world came with a twist. As I ventured to clone my dev-workspace to Azure DevOps' main branch and subsequently to my desktop, a mysterious disappearance occurred – .pbix or .pbip files seemed to have vanished into thin air. Frantic searches on my computer yielded no results, and I found myself at a crossroads.


One option at my disposal was to upload all my Power BI .pbix (or .pbip) files from my computer to the Azure DevOps main branch and then sync it with the dev-workspace. However, this approach posed some unexpected challenges and inconveniences.


I was determined to find a more elegant solution. And so, the adventure began, leading me to the discovery of a better way, one that involved manual creation of .pbip files, ultimately simplifying the entire process. Buckle up, as we embark on this exhilarating journey to master Power BI Source Control and Git Integration like never before!


My journey took flight when I stumbled upon the enlightening blog post by the brilliant Marc Lelijveld. A heartfelt thank you to Data-Marc's invaluable contribution, "Recover Your XMLA-Modified Power BI Dataset with These Git-Integration Steps – Data – Marc (data-marc.com)" , which illuminated the path to creating .pbip files manually on my computer.

With this newfound knowledge as the guide, let's embark on my exciting journey together.



1. I've established three distinct workspaces within Power BI Service, each designated for its respective role within the Development, Test, and Production pipelines.


2. I've successfully created a deployment pipeline.




3. Within my existing folder, I've crafted both a .pbix file and a .pbip file, each with a specific purpose – both destined for publication in the dev-workspace within the development pipeline. The decision to create both file types stemmed from my curiosity to explore potential variations in behavior when these datasets and reports are synchronized from the workspace to Azure DevOps. Surprisingly, my investigation revealed no disparities, but our exploration continues.


4. Two datasets and two reports are situated as illustrated below.


5. I create an Azure DevOps project to establish a main branch, thereby ensuring a single source of truth for our development efforts.



6. I've confirmed the successful creation of the main branch.


7. I returned to the dev-workspace and proceeded to configure it as follows to enable Git integration.



8. Upon inspection of the main branch in Azure DevOps, the view is as depicted below. As previously mentioned, no discrepancies were observed between the .pbix file's dataset/report and the .pbip file's dataset/report from the dev-workspace.

However, a noticeable absence becomes apparent – the .pbip files for both datasets are conspicuously missing. This anomaly reappears after cloning the main branch to a local computer.



9. Within the repository, I've encountered solely .pbir files for each.


10. Now, it's time to embark on the manual creation of .pbip files. Open Notepad and enter the following content. The following instructions are for creating a .pbip file for the Sales_PBIX dataset. Save it as a .txt file initially, and then proceed to change the file extension to .pbip.


{   
	"version": "1.0",   
	"artifacts": [     
		{       "report": {         
			"path": "Sales_PBIX.Report"       
			}     
		}   
	],   
	"settings": {     
		"enableAutoRecovery": true   
	} 
}



11. Alter the .pbip file as described earlier (by adding a new sentence in the report), and subsequently commit these modifications to the Azure DevOps main branch.


12. As depicted below, following the synchronization of the Azure DevOps main branch with the workspace, the changes have been successfully applied to the report.

13. The same set of steps applies to the Product_PBIP dataset and report:

  • Create the .pbip file manually.

  • Commit it to the Azure DevOps main branch.

  • Synchronize with the dev-workspace.

This process mirrors the one I followed for the Sales_PBIX dataset and report.




In this enlightening journey, I've ventured into the intricate world of Power BI source control, and Git integration. As I navigated through the process of configuring Git integration for my dev-workspace and examined the behavior of .pbix and .pbip files, several key lessons and takeaways have emerged.


First and foremost, I learned and discovered the power of manual .pbip file creation, a crucial skill for Power BI developers. This not only allowed me to maintain control over my datasets and reports but also facilitated seamless synchronization with Azure DevOps.


Furthermore, my investigation uncovered that there is no discernible difference in the behavior of .pbix and .pbip files during the initial synchronization from the workspace to Azure DevOps' main branch. While this knowledge has been enlightening, it's important to acknowledge that there may be intricacies beyond what I've uncovered. If anyone possesses additional insights, I'm eager to continue learning and avoid any potential confusion. Your input is invaluable.


The main branch in Azure DevOps emerged as the linchpin of our development process, ensuring a single source of truth for all our efforts. It's the foundation upon which collaboration and version control in Power BI are built.


In conclusion, my journey underscores the significance of a streamlined development workflow, emphasizing the need to create .pbip files manually, learn Git integration, and utilize Azure DevOps for version control. These are essential skills and tools that can enhance the productivity of Power BI developers, helping us deliver impactful insights and reports within our organizations. With this practice, I am better equipped to unlock the full potential of Power BI and take our data-driven endeavors to new heights.

452 views0 comments

Commentaires


bottom of page