Simultaneous editing of a Canvas App using Git version control (experimental)

December 14 2022

Working with Microsoft Power Apps canvas apps in a distributed development environment is a little challenging because only one creator can edit an app. For everyone else it will be locked, to prevent overlapping and conflicting modifications.

The fact that a Power App's whole contents cannot be made accessible anywhere in plain code is another unpleasant feature. In addition to managing developer changes, saving Power Apps content as plain code would make it quicker to rename variables, change the typeface used across the application, or locate where variables are utilized.


Modification of a canvas app by more than one person is made easy using a new experimental Git version control feature from Microsoft. This feature prevents the app from locking out other users while one person is modifying it. Any modifications a user makes to the canvas app are automatically synchronized, combined with other modifications, and made visible to other users who are also editing the app.

Git is significant in this context. It serves as a repository for your app's functionality. You just need to set up the connection to Git and authenticate with it once.

Power Apps Studio supports the use of any Git service, including GitHub and Azure DevOps.

How to enable Git Version Control?

Follow these steps to enable Git Version Control:

Create a new canvas app or open an existing app that you would like to add to Git version control.

  1. Select Settings in Power Apps Studio
  2. Select Upcoming features
  3. Select Experimental
  4. Scroll down to Show the Git version control setting and turn it On
  5.  A new Git version control item will get added on the left-hand side of the settings pane

Connect an app to Git

Follow these steps to connect your app to Git:

  1. Select Settings in Power Apps Studio
  2. Select Git version control
  3. Select Connect, and fill-in Git connection information for this app


Git Repository URL: The URL of Git tools as shown below

Branch: The branch name to use.

Directory: The directory within the branch to use. You can't store a canvas app at the root of the branch.

You will be requested to create the branch or directory if it doesn't already exist. However, the current canvas app will be closed, and the existing app will be loaded from Git if the branch and directory already contain a canvas app.

Authenticate with Git using Personal Access Token

About Arvind Khadye

More about Arvind Khadye