Main Content

Manage Evolutions and Evolution Trees

The files you want to organize and analyze with evolutions must be contained in a single project. For more information about creating a project, see Create a New Project from a Folder.

To open the Design Evolution Manager, first open the project containing your files. If the project contains existing evolution trees, the project opens the version of files from the last previous active evolution. To open the app, from the Projects tab, under Tools, click the Design Evolution Manager icon .

Note

The Design Evolution Manager is available on MATLAB® Online™ only and requires a Simulink® license.

Create Evolution Tree

When you open the Design Evolution Manager for the first time, or when you click the New Tree button in the Design Evolution Manager toolstrip, the Create New Evolution Tree dialog box guides you through the process of creating a new evolution tree. Select the project containing your design files and give the evolution tree a name. Optionally, add notes about the evolution tree.

Create New Evolution Tree dialog box.

The app creates a new evolution tree containing the Baseline evolution. The Baseline evolution contains a copy of all files in the project in their current state. The current files indicator shows that the version of files captured in the Baseline evolution are open in the project.

New evolution tree containing the Baseline evolution.

The evolution tree you create is saved as part of the project. All of your design files must be contained within a single project.

A project can contain multiple evolution trees. Use the Change Tree and Delete Tree buttons to manage evolution trees in your project. You can also right-click the canvas of the evolution tree to access these options.

Create Evolution

By default, the Baseline evolution is locked , meaning that this evolution will not record changes to files in the current project. This setting preserves the state of the Baseline evolution at the time it was created. Because the Baseline evolution is locked, when you make changes to project files, the Design Evolution Manager automatically creates a new child evolution to record your changes as you work. Alternatively, you can click Create Evolution to create a new child evolution.

After the new evolution is created, the current files indicator moves to the new evolution to indicate that these are the version of files currently open in the project. The record indicator marks the active evolution. Any changes you make to project files are recorded to the active evolution.

Evolution tree containing the Baseline evolution and a new Untitled evolution.

Lock Evolution

When you have finished making changes in an evolution, you can lock the evolution to prevent the evolution from recording further changes you make to project files. If you continue making changes after locking an evolution, the Design Evolution Manager automatically creates a new child evolution to record your changes. Parent evolutions are always locked.

Get Evolution

At any point in the design process, you can return to a previous version of your design that was saved in an evolution. Select the evolution to which you want to return, then click Get Evolution. The Design Evolution Manager gets that version of the design files into the project. The evolution tree indicates this action visually by moving the current files indicator to the selected evolution. You can then continue working with this previous version of the design files. If the evolution you get is unlocked, it becomes the active evolution. If the evolution you get is locked, the app will create a child active evolution when you start making changes to files in the project.

When you get an evolution, the app restores the previous saved state of the project files including any added or removed files. For example, assume you have an evolution tree where Evolution 1 contains the file foo.m, but in your active evolution you delete this file from disk and remove it from the project. If you get Evolution 1, the app restores the file foo.m to the disk and re-adds the file to the project.

Delete Evolutions

To delete an evolution, first select the evolution, then click Delete Evolution. The app deletes the evolution. If the deleted evolution had one child node, the child is reparented to the next-higher evolution in the tree. You cannot delete a parent evolution that has multiple child evolutions.

To delete a branch of the evolution tree, select the parent evolution and click Delete Branch. The app deletes the selected parent evolution and all child evolutions.

Make Tree Active

You can have multiple evolution trees in a project hierarchy. Use the Tree Browser to navigate and view different trees saved in the project hierarchy. The record indicator marks the active tree, which contains the active evolution. To make a tree active, select the tree and click Make Tree Active.

Managing Changes Made Outside the App

When you make changes to project files with the Design Evolution Manager app open, your changes are automatically recorded to the active evolution. If you make changes to project files when the Design Evolution Manager app is closed, the app does not actively record these changes. The next time you open the Design Evolution Manager, you must tell the app how to handle these changes.

After reopening the Design Evolution Manager and selecting an evolution tree, the Unsaved Project Changes dialog box presents options for recording unsaved changes in an evolution:

  • Update — Update the selected evolution with the changes made to project files when the app was closed. You can only update unlocked evolutions.

  • Create Child — Create a child evolution under the selected evolution to record the changes made to project files when the app was closed. You can create a child evolution under any evolution in the evolution tree.

  • Cancel — Changes you made to project files when the Design Evolution Manager was closed are not recorded by the app.

The Unsaved Project Changes dialog shows the evolution tree hierarchy. You can choose to update an evolution or create a child evolution to record your changes in an evolution.

See Also

|

Related Topics