Document version control
Version history
Teneo Studio allows to keep track of changes made to various types of documents in a solution. All intermediate versions are saved and the user can restore several types of documents to previous versions when and if needed.
The below listed objects and documents in Teneo Studio are versioned.
Version controlled documents | ||
---|---|---|
Class | Folder | Metadata |
Context | Global Variable | Ordering |
Emotion | Integration | Publish Environment |
Entity | Language Object | Scripts |
File Resource | Lexical Assignment | Solution Properties |
Flow | Listener |
For each object and document type, it is possible to see the version history either in the backstage of the object or by selecting the document and opening the history by clicking the History button.
The History button is available in the top ribbon of Teneo Studio, above Global documents when selecting one in the list, in the Class Manager above the Class details view and in the top of the views in other areas such as Resources and Properties. In Language Objects, Entities, Flows and the Ordering windows, the History is available in the backstage of the window.
History view
The History displays each version and each version contains information about the performed action, which revision it is related to and the comment (if this was added).
When the location of an object changes from one version to another, this is also displayed in the History.
By default, there is no limit to how many versions can be stored. However, it is possible to set a limit to the number of versions by uncommenting the property _system.version.maxVersions_
in the teneo-studio.properties file.
Solution Log
The Solution Log is available in the Home tab of Teneo Studio by simply clicking the Solution Log button in the top ribbon.
Every time a change is made to a document or to a group of documents, a new version is created, and the Solution Log provides a view of all these changes performed in the solution.
The Solution Log contains the following information from left to right in the view:
- Revision number
- Name of the user who performed the modification and time stamp
- Comment or auto-comment about the modification
- Document(s) involved in the modification
- Modification performed, e.g. Modified, Moved, Removed.
The Revision number is what defines the version of a solution, therefore its version is the latest revision number.
The Solution Log cannot be cleaned, and it will contain all the changes from when the solution was created up till now.
It is possible to open specific versions of documents in the Solution Log by double-clicking them.
Creating document history
Every time a document is saved, a new version of the document is created. For some save actions the user is prompt to add a comment or description of the performed change for future reference.
These comments are added to the history of the document and can be viewed in the History view or in the Solution Log. Clicking a previous version allows the user to open a read-only view of the document in that specific version.
Restore a previous version
When opening a previous version of a document, a Restore button is available in the top ribbon of the document. When clicking Restore, a new version of the document will be created, containing the data of the selected version.
Version Flag
With Version Flag it is possible to set a specific version of a document as stable meaning that the document is ready for publish (i.e. has been tested and quality assured), and meanwhile the user can keep working in the same document on new implementations, but wait with changing the stable version until the new implementation has been tested and quality assured. This way, projects will be able to have a "stable solution" which can be re-published if needed, while the "latest version" is being developed and tested accordingly.
Documents can be set as stable in various places:
- In the Solution Explorer, by selecting one or more objects or a folder
- From the History of a document when selecting a revision
- In the top ribbon of an object
- Furthermore, an entire revision can be set as stable in the Solution Log window.
Stable version icon
Documents with a stable version are displayed with one of the following two icons:
The yellow icon indicates that the stable version is the latest version of the document, while the grey icon indicates that the stable version is a former version of the document (i.e. changes have been saved after setting the stable version).
No icon displayed means that the document does not yet have a stable version.
Required Stable documents
To consider a solution stable and be able to test it in Auto-Test and Try Out or Publish the Stable version, the below documents mandatorily require to have a stable version:
- Solution Properties
- Intent Trigger Ordering
- Prompt Trigger Ordering
- Global Listener Ordering
- Solution Libraries (Lexical Resource assignment)
If one or more of the above documents do not have a stable version, then the solution cannot be considered stable and cannot be used for testing/publish. Trying to test/publish a stable solution missing a stable version in any of the above documents will lead to error messages being displayed, e.g. in the Try Out as captured in the below image.
When at least all the mandatory documents have a stable version it is possible to use Auto-test, Try Out and Publish the stable solution.
Edit stable version of a document
To edit a stable version of a document, if the stable version is the latest version of the done is done by simply editing the document in its current version; but when the stable version is a former version of the document, this version of the document first needs to be restored (as explained above) and then the changes can be applied and saved.
Deletion of documents with stable version set
Deleting a document with a stable version will not automatically remove it from the stable solution; in order to remove the document from the stable solution, the document needs to be manually unset from stable in the Recycle Bin.