Skip to content

Commit 3d047aa

Browse files
Merge pull request mendix#10979 from pradeep-patil-mdx/ccr/66-textual-compare-revisions
[CCR-66] Ref guide for texutal compare revisions
2 parents 23ac0f2 + aff0887 commit 3d047aa

10 files changed

Lines changed: 252 additions & 7 deletions

File tree

content/en/docs/refguide/modeling/menus/version-control-menu/history-dialog.md

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,23 @@
22
title: "History"
33
url: /refguide/history-dialog/
44
weight: 50
5+
description: "Describes the History pane in Studio Pro, which shows committed changes to an app's development line."
56
---
67
## Introduction
78

8-
Use the **History** pane to see the changes that have been committed to a development line of an app. You can open this pane from the **Version Control** > **History** menu item. The **History** pane displays all revisions at once in a searchable grid, making it easy to view the detailed project history.
9+
Use the **History** pane to see the changes that have been committed to a development line of an app. You can open this pane by selecting **Version Control** > **History** from the menu. The **History** pane displays all revisions at once in a searchable grid, making it easy to view the detailed project history.
910

1011
{{% alert color="info" %}}
11-
In Studio Pro 11.6, a new default view for History was introduced. Partially-cloned apps automatically get the older blocking dialog and through the [Version Control Preferences](/refguide/preferences-dialog/#history-pane), you can choose to keep using the blocking dialog for all apps.
12+
Studio Pro 11.6 introduced a new default view for History. Partially cloned apps automatically use the older blocking dialog. You can also choose to keep using the blocking dialog for all apps through the [Version Control Preferences](/refguide/preferences-dialog/#history-pane).
1213

13-
When using the Revision Selector to select a revision to revert, to merge from, create a branch line off, or to create a deployment archive from, the blocking dialog is still used.
14+
The Revision Selector still uses the blocking dialog when you select a revision to revert, merge from, create a branch line from, or create a deployment archive from.
1415

15-
For more information on the blocking dialog, refer to the [Mendix 10 documentation](/refguide10/history-dialog/).
16+
For more information on the blocking dialog, see the [Mendix 10 documentation](/refguide10/history-dialog/).
1617
{{% /alert %}}
1718

1819
## Revisions
1920

20-
{{< figure src="/attachments/refguide/modeling/menus/version-control-menu/history-dialog/revisions.png" alt="Revisions Image" class="no-border" >}}
21+
{{< figure src="/attachments/refguide/modeling/menus/version-control-menu/history-dialog/revisions.png" alt="History pane showing a grid of revisions" class="no-border" >}}
2122

2223
Each line in the grid represents a revision in the repository.
2324

@@ -41,6 +42,14 @@ For each revision the following information is shown, more information about eac
4142

4243
By selecting a revision in this grid, the tabs below the grid will be filled with information about this revision.
4344

45+
### Comparing Revisions
46+
47+
To compare any revision to your current working state, right-click a revision and select **Compare to current state**. This opens the [Comparison pane](/refguide/comparison-pane/), which shows all differences between the selected revision and your current state, including uncommitted changes.
48+
49+
{{< figure src="/attachments/refguide/modeling/menus/view-menu/comparison-pane/history-right-click-menu.png" alt="Right-click menu showing Compare to current state option" class="no-border" >}}
50+
51+
For more information, see [Comparing Revisions](/refguide/comparing-revisions/).
52+
4453
#### Revision{#revision}
4554

4655
A unique alphanumeric identifier of the revision in the repository. The revision identifier is the Git hash for the commit and is unique for a whole repository.
@@ -96,3 +105,5 @@ This tab shows a list of stories that are related to the changes.
96105
* [Version Control](/refguide/version-control/)
97106
* [Stories Pane](/refguide/stories-pane/)
98107
* [Using Version Control History](/refguide/version-control-using-history/)
108+
* [Comparison Pane](/refguide/comparison-pane/)
109+
* [Comparing Revisions](/refguide/comparing-revisions/)

content/en/docs/refguide/modeling/menus/view-menu/_index.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,10 @@ This pane has two levels, so when you zoom into a changed document, you can revi
6868

6969
<video width="640" height="360" controls src="/attachments/refguide/view-menu/changes.mp4">VIDEO</video>
7070

71+
### Comparison
72+
73+
The [Comparison pane](/refguide/comparison-pane/) shows the differences between a selected historical revision and your current working state, which allows you to see what documents, elements, and properties changed.
74+
7175
### History {#history-pane}
7276

7377
The non-blocking History pane shows commits in your repository and allows you to search and navigate to modified documents without closing the history view.

content/en/docs/refguide/modeling/menus/view-menu/changes-pane.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@ description: "Describes the Changes pane in Mendix Studio Pro."
99

1010
For version control enabled apps (apps with Team Server or other Git servers), the **Changes** pane shows the local changes to the app since the last commit. You can commit changes, update to the latest revision, and view the history from it.
1111

12+
{{% alert color="info" %}}
13+
The **Changes** pane shows your local changes since the last commit. To compare any historical revision to your current state, use the [Comparison pane](/refguide/comparison-pane/) instead. For more information, see [Comparing Revisions](/refguide/comparing-revisions/).
14+
{{% /alert %}}
15+
1216
This pane consists of the following:
1317

1418
* The [top bar](#top-bar) contains various buttons, such as **Back**, **Go to**, **Tasks**.
@@ -141,4 +145,6 @@ The left and right panes will contain the same information as in [Zoomed-In Leve
141145
## Read More
142146

143147
* [Studio Pro Overview](/refguide/studio-pro-overview/)
144-
* [Version Control](/refguide/version-control/)
148+
* [Version Control](/refguide/version-control/)
149+
* [Comparison Pane](/refguide/comparison-pane/)
150+
* [Comparing Revisions](/refguide/comparing-revisions/)
Lines changed: 160 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,160 @@
1+
---
2+
title: "Comparison Pane"
3+
url: /refguide/comparison-pane/
4+
weight: 25
5+
description: "Describes the Comparison Pane in Mendix Studio Pro for comparing a revision to the current state of a version-controlled app."
6+
---
7+
8+
## Introduction
9+
10+
The **Comparison** pane shows the differences between a selected historical revision and your current working state in a version-controlled app. This pane displays three levels of detail: which documents have changed, which elements within those documents have been altered, and which property values now differ.
11+
12+
This feature requires a version-controlled app. For apps without version control, the **Comparison** pane is disabled.
13+
14+
{{% alert color="warning" %}}
15+
You can only compare a selected historical revision to your current working state. It is not possible to compare two past revisions to each other.
16+
{{% /alert %}}
17+
18+
This feature is similar to the [Changes pane](/refguide/changes-pane/), but while the **Changes** pane shows your local modifications since your last commit, the **Comparison** pane shows differences between any historical revision and your current state.
19+
20+
For more information on comparing scenarios, refer to [Comparing Revisions](/refguide/comparing-revisions/).
21+
22+
## Accessing the Comparison Pane and Version Compatibility
23+
24+
To compare a revision to your current state, do the following:
25+
26+
1. Open the **History** dialog by clicking **View** > **History**.
27+
2. Right-click a revision from the list.
28+
3. Select **Compare to current state**.
29+
30+
The **Comparison** pane opens and shows all differences between the selected revision and your current working state, including any uncommitted changes.
31+
32+
{{< figure src="/attachments/refguide/modeling/menus/view-menu/comparison-pane/history-right-click-menu.png" alt="Compare to current state option in History pane right-click menu" class="no-border" >}}
33+
34+
{{% alert color="warning" %}}
35+
When comparing revisions created in older versions of Studio Pro, the models are automatically converted to the current Studio Pro version format. Due to this automatic conversion, the displayed older revision may not be 100% identical to the original model. This is a normal part of the version upgrade process and does not affect your actual stored revisions.
36+
{{% /alert %}}
37+
38+
## Comparison Pane Overview
39+
40+
The **Comparison** pane shows information at three levels:
41+
42+
* **Level 1** – a list of all documents that differ between the two revisions
43+
* **Level 2** – all elements within a selected document that have changed
44+
* **Level 3** – the specific property values that differ for a selected element
45+
46+
Navigate between levels by double-clicking a row or clicking **Go to**. Press <kbd>Backspace</kbd> or click **Back** to return to the previous level.
47+
48+
### Unversioned App State
49+
50+
If your app does not have version control enabled, all buttons in the **Comparison** pane are disabled and a message indicates that version control is required.
51+
52+
### Level 1: Document List
53+
54+
Level 1 displays all documents that differ between the selected revision and your current state.
55+
56+
{{< figure src="/attachments/refguide/modeling/menus/view-menu/comparison-pane/comparison-pane-level1.png" alt="Comparison Pane Level 1 showing document list" class="no-border" >}}
57+
58+
#### Task Bar
59+
60+
The task bar contains the following buttons:
61+
62+
| Button | Action | When Enabled |
63+
|--------|--------|--------------|
64+
| **Back** | Returns to the previous level | Always disabled at Level 1 (to prevent layout shift) |
65+
| **Go to** | Opens the selected document and navigates to Level 2 or 3 | Enabled when a document is selected |
66+
| **Stop comparison** | Closes the comparison and returns to the blank state | Always enabled during an active comparison |
67+
68+
#### Context Menu
69+
70+
Right-click any cell in the grid to access the **Copy** option, which copies the cell value to your clipboard.
71+
72+
#### Grid Columns
73+
74+
The document list grid contains the following columns:
75+
76+
| Column | Description | Elements It Shows |
77+
|--------|-------------|---------------|
78+
| **Status** | The type of change | An icon and label indicating whether the document was **Added**, **Modified**, or **Deleted** |
79+
| **Item** | The document name | The name of the changed document (for example, a page, a microflow, or a domain model) |
80+
| **Module** | The module location | The module that contains the document |
81+
82+
#### Status Types
83+
84+
The **Status** column shows one of the following types:
85+
86+
| Status | Icon | Meaning | When It Appears |
87+
|--------|------|---------|-----------------|
88+
| **Added** | Green circle | A new document was created | The document exists in the current state but not in the selected revision |
89+
| **Modified** | Yellow circle | Changes were made to an existing document | The document exists in both revisions but has differences |
90+
| **Deleted** | Red circle with minus | A document was removed | The document existed in the selected revision but not in the current state |
91+
92+
## Level 2 and 3: Element and Property Differences
93+
94+
Double-click a document in Level 1 to navigate to Level 2 and Level 3, which appear side by side. Level 2 shows changed elements, and Level 3 shows the property differences for the selected element.
95+
96+
{{< figure src="/attachments/refguide/modeling/menus/view-menu/comparison-pane/comparison-pane-level2-3.png" alt="Comparison Pane Level 2 and Level 3 showing element and property differences" class="no-border" >}}
97+
98+
### Task Bar
99+
100+
The task bar at Level 2 and 3 contains the following buttons:
101+
102+
| Button | Action | When Enabled |
103+
|--------|--------|--------------|
104+
| **Back** | Returns to Level 1 | Always enabled |
105+
| **Go to** | Focuses on the selected element in the document | Enabled when an element is selected; remains active even for deleted elements to support cross-tab navigation |
106+
| **Expand all** | Expands all collapsed property tree rows in Level 3 | Always enabled when viewing Level 3 |
107+
| **Collapse all** | Collapses all expanded property tree rows in Level 3 | Always enabled when viewing Level 3 |
108+
| **Stop comparison** | Closes the comparison and returns to the blank state | Always enabled during an active comparison |
109+
110+
### Context Menu
111+
112+
Right-click any cell in either the Level 2 or Level 3 grid to access the **Copy** option.
113+
114+
### Level 2 Grid
115+
116+
The Level 2 grid shows all changed elements within the selected document:
117+
118+
| Column | Description | What It Shows |
119+
|--------|-------------|---------------|
120+
| **Status** | The type of change | An icon and label indicating whether the element was added, modified, or deleted |
121+
| **Item** | The element name | The name of the changed element (for example, a widget, entity, or activity) |
122+
123+
Hover over any cell to see the full value in a tooltip.
124+
125+
### Level 3 Grid
126+
127+
The Level 3 grid shows the property-level differences for the element selected in Level 2:
128+
129+
| Column | Description | What It Shows |
130+
|--------|-------------|---------------|
131+
| **Property** | The property name | The name of the property that changed, shown as a tree structure |
132+
| **Older** | The value in the selected revision | The property value as it was in the historical revision |
133+
| **Newer** | The value in the current state | The property value as it is in your current working state |
134+
135+
Property paths are consolidated into a tree view. Grey rows represent intermediate path levels that do not have a direct value. The row order reflects the top-to-bottom, left-to-right order that the corresponding components appear in their dialog boxes.
136+
137+
## Opening Documents
138+
139+
When you click **Go to** or double-click a document entry in Level 1, the document opens as it currently exists in your app. If the document no longer exists in your current state, Level 2 and 3 is shown but nothing opens in the editor.
140+
141+
{{% alert color="info" %}}
142+
In future releases, both versions of the document will be opened side by side for visual comparison. For now, only the current version opens.
143+
{{% /alert %}}
144+
145+
## Refresh Behavior
146+
147+
When you are comparing a revision to your current state and save changes to your app, a **Refresh** button appears in the **Comparison** pane. Click **Refresh** to update the comparison with your latest saved changes.
148+
149+
## Stopping a Comparison
150+
151+
Click **Stop comparison** to close the comparison. This action closes the **Comparison** pane and returns it to a blank state. Any documents that were opened as part of the comparison remain open in the editor.
152+
153+
In the blank state, the **Comparison** pane displays a message with a link to start a new comparison. The **Go to** and **Stop comparison** buttons are disabled until a new comparison is started.
154+
155+
## Read More
156+
157+
* [History](/refguide/history-dialog/)
158+
* [Changes Pane](/refguide/changes-pane/)
159+
* [Comparing Revisions](/refguide/comparing-revisions/)
160+
* [Version Control](/refguide/version-control/)

content/en/docs/refguide/version-control/_index.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,12 @@ Currently, Mendix does not support pull or merge requests through the Team Serve
3333
* code for Java and JavaScript actions
3434
* HTML/CSS for theming
3535

36+
## Comparing Revisions
37+
38+
Use the [Comparison pane](/refguide/comparison-pane/) to compare any historical revision to your current working state. This helps you understand what has changed since a specific revision, see the impact of your recent edits, or review what would be affected if you reverted to a past revision.
39+
40+
For more information, refer to [Comparing Revisions](/refguide/comparing-revisions/).
41+
3642
## Frequently Asked Questions
3743

3844
### What Version Control System Is Team Server Built On? {#which-team-server}

content/en/docs/refguide/version-control/using-version-control-in-studio-pro/_index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,6 @@ description_list: true
1313

1414
This document describes how to use [version control](/refguide/version-control/) in Mendix Studio Pro.
1515

16-
For more information on related concepts and the theory behind how version control works in Mendix, see [Version Control](/refguide/version-control/).
16+
For more information on related concepts and the theory behind how version control works in Mendix, refer to [Version Control](/refguide/version-control/).
1717

1818
## Read More
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
---
2+
title: "Comparing Revisions"
3+
url: /refguide/comparing-revisions/
4+
weight: 65
5+
description: "How to compare a historical revision to your current state to understand what changed."
6+
---
7+
8+
## Introduction
9+
10+
You can compare any historical revision of your version-controlled app to your current working state using the [Comparison pane](/refguide/comparison-pane/). This helps you understand what has changed since a specific commit, see the impact of your recent edits, or review what is affected if you revert to a past revision.
11+
12+
The comparison shows differences between:
13+
14+
* **Older revision** – the historical revision you selected from the **History** pane
15+
* **Newer revision** – your current working state, including all uncommitted changes
16+
17+
The comparison always includes your current uncommitted changes, so you can use this feature to see how your recent edits differ from any point in your app's history.
18+
19+
{{% alert color="warning" %}}
20+
You can only compare a selected historical revision to your current working state. It is not possible to compare two arbitrary past revisions to each other.
21+
{{% /alert %}}
22+
23+
For more information on the **Comparison** pane and its detailed overview, refer to [Comparison Pane](/refguide/comparison-pane/).
24+
25+
## Common Scenarios
26+
27+
### What Changed Since a Specific Commit?
28+
29+
You can review all changes made since a specific commit. This helps you understand the scope of work done since the selected commit, made by you or other team members.
30+
31+
### What Would Reverting to This Revision Undo?
32+
33+
Before reverting to an older revision, you can compare your current changes to a revision you are considering reverting to and review what changes will be lost. This helps you make an informed decision about whether reverting is safe or if it would undo important work.
34+
35+
### Will My Recent Changes Affect a Specific Area?
36+
37+
To check if your recent uncommitted changes affected a specific area of your app, do the following:
38+
39+
1. Open the **History** dialog and select your most recent commit (HEAD).
40+
2. Right-click and select **Compare to current state**.
41+
3. Look for the documents or elements you are concerned about.
42+
43+
Because the comparison includes uncommitted changes, you can see the full impact of your current working session.
44+
45+
## Tips and Tricks
46+
47+
* **Use Expand all and Collapse all** – In Level 3, use these options to quickly show or hide all nested property paths. This is especially useful when comparing complex elements with many properties.
48+
* **Right-click any cell** – In the grids, right-click any cell and select **Copy** to copy the cell value to your clipboard. This is useful for documenting changes or sharing information with your team.
49+
* **Press <kbd>Enter</kbd> to drill down** and <kbd>Backspace</kbd> to go back – Use these shortcuts while when navigating the comparison. This is faster than using the mouse to click buttons.
50+
* **Understand version conversions** – When comparing older revisions, remember that model conversions may introduce minor differences in how properties are displayed. These differences do not affect your stored revisions.
51+
52+
## Read More
53+
54+
* [Comparison Pane](/refguide/comparison-pane/)
55+
* [History](/refguide/history-dialog/)
56+
* [Changes Pane](/refguide/changes-pane/)
57+
* [Version Control](/refguide/version-control/)
58+
* [Using Version Control History](/refguide/version-control-using-history/)
81.8 KB
Loading
98.2 KB
Loading
187 KB
Loading

0 commit comments

Comments
 (0)