Branch History Tool
Start Menu Path:
- Project Explorer Menu / Configuration Mgt / Show Branch History
- Module Menu / Configuration Mgt / Show Branch History for current Module (current module preselected)
Function: The Show Branch History tool has two different use cases:
- Retrace the history of a module
- Determining the integration status for a set of modules in a project
The Show Branch History Tool presents the user the following GUI:

- Select Modules - this button opens a tag list editor for selecting the list of modules that shall be evaluated. Note that when starting the tool from a module, the list of selected modules will already have been populated by the current module. Since the module version is not interesting when looking at history, the script will always evaluate the current version of the modules, regardless if the selected modules have baselines. The script will inform the user that it will ignore baselines.
- Selected Modules - this list view contains the list of selected modules. When a module is selected from the list, the history of the module is shown in the "Module History" list view.
- Module History - this list view will list the following facts about the history of the module up to the branch root of the module, i.e. the module where it originally originated from. This means that when a module A is branched to module B and then branched again to module C, then module C has the history of B and A (see also Understanding Branch History). Relevant events for the history are;
- Baselines - since baselines form a possible branch point and a possible common base, all baselines are relevant for the branch history.
- Branch actions - The branch action in the past of the module show where in the database the module came from originally. Note that the name of the module that is shown reflects the name as it was when branching the module. If a module is moved and/or renamed after branching, then it might be confusing to retrace the history, since the history will still list the original name.
- Integrations - Integrations to the current module, i.e. where the selected module was the target are also shown in the history. This gives the user an overview over the existing integration baselines and their relation to other baselines in the module.
Finding out the integration status for a set of modules in a project
The other elements of the GUI are related to the second use case behind the Show Branch History Tool.
Show Integration with Source Branch- when pressing the button, the user will be prompted to select a branch for showing the integration status. After selecting the branch, then for each module of the Selected Modules list the following will be calculated:
- The date and time of the last integration with the selected branch
- The date of the last modification of the module
- If the module was modified after the last integration with the selected branch
Using this information, the user can determine the modules that
- have never been integrated from the selected branch.
- have been integrated, but the source module was changed again after the integration, i.e. the module might contain changes that need to be merged.
- have been integrated and the source module from the selected branch was not changed afterwards, i.e. it can be assumed that no further integration is necessary.
Using the "Export Upper Pane to Excel" the selected modules list can be exported to excel for further evaluation. Note that this evaluation can be repeated for multiple branches. In this case, for each branch, a set of columns will be inserted in the list view. This way one could, for example, show the integration status with all variants of the current project.