Project Auto-save & Local History

Now reading version 4. For the latest, read: Project Auto-save & Local History for version 5
Applies to NEXUS Client versions: 2.1, 3.0, 3.1, 3.2 and 4

This documentation page references Altium NEXUS/NEXUS Client (part of the deployed NEXUS solution), which has been discontinued. All your PCB design, data management and collaboration needs can now be delivered by Altium Designer and a connected Altium 365 Workspace. Check out the FAQs page for more information.

 

Developing an electronic product in an environment like Altium NEXUS results in a large number of electronic files. These files are valuable since they are your company's IP (Intellectual Property) and must be stored and maintained in an appropriate way. Altium NEXUS includes a number of features to ensure that your files remain safe, are backed up, and older versions can be retrieved if necessary.

Apart from the actual files themselves, Altium NEXUS includes the following file storage/management capabilities:

  • Timed auto save backups – automatically save multiple versions of all open files at the specified time interval.
  • Local History – take a historical snapshot each time a file is manually saved, keeping the snapshots for the specified number of days.
  • Version Control – interface directly to a Version Control System (VCS) from within Altium NEXUS.

Altium NEXUS can be configured to use all three techniques, including configuring the Local History feature to add the Auto Save files into the Local History folder.

Auto Save Backups

Configured in the Data Management – Backup page of the Preferences dialog, the Auto Save feature saves a copy of all currently open files that have been modified (in the Projects panel, this is indicated by an asterisk after the filename) into the specified location and at the specified time interval. Up to 10 versions of each file can be saved in the location specified by the Path entry in the Preferences dialog.

Data Management - Backup page of the Preferences dialog

This feature is intended for disaster recovery, for example, if the power fails and your PC shuts down unexpectedly. AutoSave files are identified by the addition of .~(X) into their filename, for example, the file MySchematic.SchDoc is auto saved as MySchematic.~(1).SchDoc, then MySchematic.~(2).SchDoc, etc. Note that once the specified number of versions have been saved, the filenames are re-used. That means that the file's timestamp should be used to identify the latest file, rather than the number within the brackets in the filename.

Autosave files can also be included in the Local History by enabling the Add autosaved documents to history option in the Data Management – Local History page of the Preferences dialog. When this option is enabled the file is saved in both locations when an autosave event occurs. The copy saved to the local history has a date and timestamp included in the filename and is saved in the compressed ZIP format used by the Local History feature.

Local History

The Local History management system allows you to maintain history and track document changes locally without the need for a Version Control System (VCS).

The approach of the local history management system is to make a copy of a file each time you perform a save, keeping the copies in a project History folder (the copy is the file prior to the save event). The project History folder is created within the folder that contains the project file. If a project includes documents stored in sub-folders, this sub-folder structure will be repeated within the History folder. Alternatively, you can enable the Use global repository option and specify a Global repository location that will hold the history of all projects, with each set of project files saved in a project sub-folder.

Document history management features are accessed through the Storage Manager panel. The features include the ability to view the differences between documents – both physical and logical – and revert to a previously saved version of a document. Local document history management also works in harmony with an active VCS. Individual designers can manage their own changes using the local history system with the VCS providing a complete team-oriented document management system.

Local History is configured in the Data Management – Local History page of the Preferences dialog. The number of days the file history is retained can be configured, where the history of a file save event will be held for the specified period (up to 10 days).

Data Management - Local History page of the Preferences dialog

Local History files are saved in the compressed ZIP format with an added filename number suffix (for example: SheetZ.~(3).SchDoc.Zip) that indicates its sequential version – the highest number represents the newest version.

Managing and using history

The document history timeline for the current project is available through Altium NEXUS's Storage Manager panel (View » Panels » Storage Manager). The lower region of the Storage Manager panel shows the local history for the selected project file, with each history file being labeled Version n, where n increments with each save.

Right-click on a saved version to access history command actions, such as Open the document in its editor or Apply a Label, which allows a particular version to be tagged for later reference. The Revert to option will regress the current project file back to the selected history version. Compare is used to detect the differences between two selected timeline documents (Ctrl + left-click on each file to select).

Storage Manager panel, comparing selected files via the right-click menu


Note that an active project's document history is also available from the Local History dialog. This is accessed by selecting Project » Local History » Show Local History from the main menus or by right-clicking on a document entry in the Projects panel then choosing Local History » Show Local History from the context menu.

Version Control

Main article: Version Control and Design Repositories

Version control is the preferred method of electronic document management within many companies. Not only do version control systems provide safe and controlled storage and retrieval of a company's valuable documents, they also support easy retrieval of an older version of a document, and with some systems, the ability to detect and examine document changes.

Altium NEXUS supports the Subversion (SVN) and Git version control systems (VCS). Because it has internal support for these systems, it provides access to the common SVN/Git file handling commands such as Commit, Update, etc., within Altium NEXUS, along with additional Subversion capabilities such as the ability to create an SVN repository. This integrates with the schematic and PCB comparison features, making it easy to quickly compare and identify differences between two revisions of a schematic or PCB document. Ensure that the VCS Provider - SVN and VCS Provider - Git Extensions are installed in Altium NEXUS. These are installed by default but can be accessed in the software's Extensions and Updates view.

Working with a VCS

If a VCS repository has been connected to, you can perform version-control tasks through the Storage Manager panel. To add the project files (in the current folder) to a connected design repository, right-click on the project file in the Storage Manager panel then select Add Project Folder To Version Control.

Storage Manager panel, adding the selected project to version control via the right-click menu

This process will create a version-controlled copy of the project within the selected target design repository. The VCS will configure the project files and settings so that whenever you work on this project in the future, Altium NEXUS will recognize that it is under source control and correctly reflect the status of the documents – such as when a document has been modified or added (but not yet committed) to the VCS.  

Once the project and its documents are established under version control, they can be modified and saved, and the changes Committed (or 'checked back in') to the repository directly from the Storage Manager or Projects panel via the right-click command options. In the Storage Manager, note that the Version column of the Time line (right-click in the lower region of the panel then click Switch to Combined View) will list the sequential revisions for the active file.

Where to Next?

Content