# Workflow Diff

> Comparing changes between a process, library, `project.json`, or `.txt` file in a local repository and the latest version from GIT, TFS, or SVN is done using **Workflow Diff** in Studio. It shows a side-by-side comparison between the two files, highlighting added or removed activities, packages, variables, arguments.

Comparing changes between a process, library, `project.json`, or `.txt` file in a local repository and the latest version from GIT, TFS, or SVN is done using **Workflow Diff** in Studio. It shows a side-by-side comparison between the two files, highlighting added or removed activities, packages, variables, arguments.

When comparing changes between two `.xaml` files, **Workflow Diff** shows added or removed activities, variables, arguments, or modified activity properties. Default values for properties are not visible in the **Show Changes** window.

**Workflow Diff** is used for comparing changes made in the `project.json` file, such as adding, updating or removing dependencies, modifying the runtime rule, making workflows private, or setting a **Global Exception Handler**.
:::note
**Workflow Diff** must be used after the file is saved, and before it's checked into the source control repository.
:::

## Comparing Workflow Versions

1. Check out a workflow or library from the GIT, TFS, or SVN repository, make modifications, and then save the file, but don’t check it in.
2. In the **Project** panel, right-click the `.xaml` file and click **Show changes**. The **Workflow Diff** window is displayed.

   ![docs image](https://dev-assets.cms.uipath.com/assets/images/studio/studio-docs-image-172596-772618b9.webp)

The **Remote** column on the left displays the `.xaml` structure for the file versioned under the GIT, TFS, or SVN repository, while the **Local** column on the right shows the file mapped locally.

The **Modified Properties** columns show the before and after states of activities properties, sequence display names and text boxes.

:::note
If the locally mapped `.xaml` file is corrupted, the **Workflow Diff** window is opened in the `project.json/.txt` view.
:::

Different builds of Studio can rewrite non‑functional layout metadata (such as window sizes, zoom levels, or activity coordinates) inside the.xaml files. When a workflow created in a Studio build is opened or saved in a different build, Studio marks the files as modified even though the automation logic has not changed. This behavior is expected and has no impact on runtime execution.

To clear the modification flag for anyone on the same build, commit the files once with the current Studio build. If your team works on multiple Studio versions, the flag could appear each time someone on a different build saves the workflow. To prevent this behavior, either align everyone on a single (preferably latest) Studio version or configure your repository to ignore layout‑only changes (for example, with a.gitattributes file and custom diff filters).

## Comparing Project.json Versions

1. Check out the `project.json` file in Studio and open the [Manage Packages](https://docs.uipath.com/studio/standalone/2025.10/user-guide/managing-activities-packages#managing-activity-packages) window to install, update, and remove dependencies. Click on **Save** to update the `project.json`.
2. In the **Project** panel, right-click the `project.json` file and click **Show changes**. The **Workflow Diff** window is displayed.

   ![docs image](https://dev-assets.cms.uipath.com/assets/images/studio/studio-docs-image-166788-ad932133.webp)

The **Remote** column on the left displays the `project.json` structure for the file versioned under the GIT, TFS, or SVN repository, while the **Local** column on the right shows the file mapped locally.

Dependency names are arranged alphabetically to aid with the comparing process between the two files.

### Field Descriptions for the Workflow Diff Window

| Option | Description |
| --- | --- |
| **Previous** | Navigates to the previous change in the compared files. |
| **Next** | Navigates to the next change in the compared files. |
| **Collapse All** | Collapses all nodes in the `.xaml` files. |
| **Expand All** | Expands all nodes in the `.xaml` files. |

## Viewing the File History

Aside from **Workflow Diff**, **Show History** from the same context menu allows you to compare changes between two versions of the same file. This option is available for GIT, TFS, and SVN versioned files, either `.xaml` or `project.json`.

1. Check out your project from source control in Studio. Make sure that the project has multiple commits.
2. In the **Project** panel, right-click the `.xaml` file and click **Show History**. The **History** window is displayed.

   ![docs image](https://dev-assets.cms.uipath.com/assets/images/studio/studio-docs-image-167873-cf0e6faa.webp)

3. The **History** window displays the revisions made to the file, together with **Commit messages**, the author, and the date. Double-click a revision to open the **Workflow Diff** window and view changes between the selected file and the previous version.

The **Details** tab part of the **History** window displays the author, date, revision number, and commit message. The **Changes** tab reveals the files that were in during the selected commit. Double-click a file to open the **Workflow Diff** window and view changes between the selected file and the previous version.

### Context Menu for Show History

Right-click a revision entry in the **Show History** window to open the context menu with options.

| Option | Description |
| --- | --- |
| **Compare with Previous** | Compares the selected version of the file with the previous version. |
| **Compare with Local** | Compares the selected version from GIT, TFS, SVN with the local version. |
| **Compare with Latest** | Compares the selected version of the file with the latest version. |
| **Compare Selected** | Compares the selected two versions of the file. Use **Ctrl + Click** and then right click to compare the versions. When more than 2 versions are selected, the newest and oldest are compared. |
