Collaborate via Projects
A Project is a shared repository with version control provided by Git.
To manage the workflow for a team working towards a common goal, most modern software provides some type of version control. Altair RapidMiner provides Projects, with the following benefits:
- You get a step-by-step history of the work you have done.
- Each step in history is called a Snapshot.
- Each Snapshot provides an exact copy of the Project as it existed at one specific moment in time.
- Snapshots are shared with colleagues via the Project Server.
- You can stay synchronized with your colleagues by getting updates from the Project Server.
- You can roll back to a previous Snapshot at any time.
- The back end is based on Git, a standard tool for version control.
- Although the back end is based on Git, no knowledge of Git is required.
The following sections outline how to use Projects.
- Connect to a Project
- Create Snapshot
- Get updates
- Resolve conflicts
- Discard local changes
- History Panel
Connect to a Project
Before you can connect to a Project, it must first have been created within the Altair AI Hub web interface.
In the Repository Panel, from the drop-down menu next to Import Data, select Connect to a Project.
Fill out the fields in the resulting dialog.
- The Project URL can be found in the Altair AI Hub web interface, under Repository > Projects.
- The Alias is the Project name you choose to display in the Altair AI Studio Repository Panel.
- The User must have access rights for the Project.
Check the connection by clicking Check connection settings. If the settings are correct, click OK, and the complete content of the Project will be downloaded and stored locally in the Storage location.
Create Snapshot
You can think of a Project as a series of Snapshots. Each Snapshot represents the whole state of a Project at one specific point in time; the record of a Project is identical to its Snapshot History.
When you create a Snapshot, two things are accomplished:
You create a record of your version of the Project at that instant of time. Your Snapshot is saved as part of the Snapshot History.
Your Snapshot is automatically shared with the Project Server, so that it is available to your colleagues via Get updates.
Note that within a Project, you can change as many processes and models as you like, and save them locally; nevertheless, none of your work is shared or saved to Snapshot History until you create a Snapshot.
To create a Snapshot, right-click on the Project in the Repository Panel and select Create Snapshot and add it to the AI Hub.
Summarize your changes in the Snapshot description, and click Create Snapshot. Your Snapshot is stored on the Project Server, and it is available, via Get updates, to others who have access to the Project.
Get updates
Select Get updates to update your copy of the Project from the Project Server, where all existing Snapshots of a Project, both yours and your colleagues', are collected. Get updates synchronizes your work with your colleagues'.
To check if there are new Snapshots on the Project Server:
- See if there is a notification in the Repository Panel, next to the Project name: (Project: 2 behind)
- Look for a number next to the Get updates (2) button in the History Panel
If you have made local changes, you must first take one of the following two actions:
Resolve conflicts
A conflict occurs when you and a colleague have both changed the same file. Altair AI Studio gives you the following options for each of the conflicting files:
- use my version
- use my colleague's version
Note that nothing is ever lost! All the relevant information is saved in Snapshot History, as three different Snapshots: your Snapshot, your colleague's Snapshot, and the Snapshot containing the conflict resolution.
Discard local changes
If you do not want to include your local changes in a Snapshot, you can Discard local changes.
Please be aware that this action is irreversible!
In the Repository Panel, right-click on the Project and select Discard local changes from the context menu.
Afterwards, the state of the Project will be restored to your latest local Snapshot. To retrieve your colleagues' latest Snapshots, select Get updates.
The History Panel
The Snapshot History Panel gives quick access to Create Snapshot and Get updates, and it contains a list of all locally-known Snapshots. There are two ways to open the History Panel:
- From the main menu, select View > Show Panel > Snapshot History, or
- In the Repository Panel, right-click the Project and select Open Snapshot History
Every Snapshot in the Snapshot History includes a description and three small dots displayed on the right side, with two options:
View Snapshot gives you a more detailed view of the Snapshot, including which files were changed. From there, you can view any of those files individually, or restore them.
Restore Snapshot replaces all files in your local copy of the Project with the content of this Snapshot. If you only want to examine the Snapshot, but not permanently keep it, you can Discard local changes when you are done looking at it. If on the other hand you prefer the old Snapshot, and you want to keep it, you should Create a new Snapshot, to make it current.
Note that a single click on the Snapshot description has the same effect as View Snapshot.
View Snapshot
When you view a Snapshot, you have the option to view or restore individual files that were changed in that Snapshot.
View this file
When you view a file from within a Snapshot, the behavior is the same as when you open a file in a Repository:
- data sets are displayed in the Results View,
- processes appear in the Process Panel, and
- any other files are opened by the default program for that file type.
Restore file
Select a name and location for the file, and click OK.
The same rule applies as when you Restore Snapshot. If you only want to examine the file, but not permanently keep it, you can Discard local changes when you are done looking at it. If on the other hand you prefer the old file, and you want to keep it, you should Create a new Snapshot, to make it current.