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 documents in Teneo Studio are versioned.
Version controlled documents | ||
---|---|---|
Class | Folder | Listener |
Context | Global Variable | Metadata |
Emotion | Integration | Ordering |
Entity | Intent Model Assignment* | Publish Environment |
File Resource | Language Object | Scripts |
Flow | Lexical Assignment | Solution Properties |
* Only applies to CLU Intent Model Assignments; see the CLU Manager page for more details
View History
For each document type, it is possible to see the version history either in the backstage or by selecting the document and opening the history by clicking the History button.
The History button is available in the following places:
- top ribbon of Teneo Studio
- above Global documents when selecting one in the list
- in the Class Manager above the Class details view
- in the CLU Manager's top ribbon (only available if CLU Settings are defined for the account)
- in the top of the view of areas such as Resources and Properties
- in the backstage of Language Objects, Entities, Flows, the Ordering windows.
The History displays each version and each version contains information about the performed action, which revision it is related to and the comment (if any was added at save).
When the location of a document 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
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 of these changes performed in a solution; the Solution Log cannot be cleaned and will therefore 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.
The Solution Log is available in the Home tab of Teneo Studio by simply clicking the Solution Log button in the top ribbon. The Solution Log's window contains the following information, from left to right:
- Revision number
- Name of the Studio 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 numer is what defines the version of the solution, therefore its version is the latest revision number.
Creating document history
Every time a document is saved, a new version of the document is created; for some save actions, the user is prompted 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
The Version Flag feature allows 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 are 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 documents or a folder
- From the History of a document when selecting a revision
- In the top ribbon of a document
- 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 also the latest version of the document, while the grey icon indicates that the stable version is a former version of the documents (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 whole solution stable and be able to test it in Auto-test and Tryout 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
- Global Script 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 or publish a stable solution missing a stable version in any of the above documents will lead to error messages being displayed, for example as the below image from the Tryout.
When, at least, all the mandatory documents have a stable version it is possible to use Auto-test, Tryout and also publish the stable solution.
Edit stable version of a document
To edit the stable version of a document, if the stable version is the latest version of the document then this 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 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.