Version Control
Learn how to use version control in your labs. Version control helps you streamline development processes, enable faster iteration and delivery of labs.
Overview
Version control allows you to collaborate on labs with no overwriting and a history of auditing any changes.
Collaborate with confidence
Multiple team members can work on the same content at the same time with no risk of overwriting each other’s changes. If there are conflicting changes made by multiple users, they can be compared, resolved and merged directly using git from the command line.
Keep track of changes
All changes made to content are stored, and functions as an audit log showing who changed what, when, and why the changes were made. The changes include the creation and deletion of files as well as edits to their contents.
Having the complete history and being able to annotate each change with the date, an author and a message describing the purpose and intent of the change, enables going back to previous versions to help in root cause analysis for bugs. This capability is crucial when needing to fix problems and being able to compare changes with earlier versions of the content.
Integrate with existing workflows
For content creators that are already using version control systems such as GitHub, the new integration allows you to connect your GitHub organization directly without the need for GitHub actions and the Instruqt CLI to push your content. This allows you to use your standard git workflow best practices already adopted by your organization.
Limitations
In the current beta implementation there are a few limitations to consider:
Version Control currently only integrates with GitHub
The integration can currently only be connected to one GitHub organization
Enable Version Control
Version control is currently in Beta. To have the feature enabled for your organization reach out in either your organization channel on the instruqt slack workspace or any of the support channels.
Integrating Version Control with GitHub
Now that the version control integration is enabled in your organization, a connection needs to be made with GitHub.
Enable the GitHub integration
To enable the GitHub integration, navigate to the Version Control settings page.
The VCS integrations are listed, with GitHub currently being the only option. Click the “Install” button on the GitHub integration to install the Instruqt GitHub application in your GitHub organization. You will then be redirected to GitHub, where you are taken through the GitHub application installation flow.
Select organization
First you need to select the organization you want to install the application in.
Depending on your settings, the flow might ask you to provide two-factor authentication details to GitHub.
Configure permissions
You are then taken to the application permissions page, where you can review which permissions the application wants to use.
The permissions that the Instruqt GitHub application needs are:
Read access to metadata (this is the default permissions for an application)
read the organization name, etc.
Read and write access to code
This allows the integration to read the contents of a track repository, so it can update the data in the Instruqt platform with any changes made through GitHub.
This allows the integration to write changes made in the instruqt UI back to the track repository on GitHub.
You can choose to give the permissions on all repositories in the organization, or to specific repositories only.
Install GitHub application
To complete the installation, click “Install” to confirm your choices and install the application.
You are then taken back to the Version Control settings page, which now shows that the integration was successfully installed.
Last updated