Version control is required for deploying a development environment where several developers can commit, monitor, and merge the changes made to the Creatio configuration. The purpose of the version control system in Creatio is:
transferring of changes between configurations
storing multiple versions of configuration schemas
rolling back changes to return to one of the previous versions.
Creatio supports integration with the Subversion control system (SVN) of version 1.7 and higher. For more details on using SVN see Subversion control system documentation.
An SVN repository should be the only point of contact for different development environments. Otherwise, the development environment of each developer must be insulated and run on an independent application server connected to a database not used by other Creatio application instances.
More information on setting up a development environment is available in the Development Guide.
The general procedure for setting up and connecting SVN is as follows:
Deploy SVN and create a Creatio repository
To deploy Subversion for your Creatio application:
1. Install SVN server
You can install SVN on the application server, DBMS server or on a separate dedicated server.
To install the SVN server on a Windows operating system, use one of the publicly available SVN installers:
Installation instructions for other operating systems, including Debian, are available with Apache Subversion.
The SVN server can function independently or use an Apache web-server as a frontend (both the VisualSVN and CollabNet utilities can install it as a component).
If the SVN server is running independently, repositories are accessed through the SVN protocol. If a web server is used as a frontend, repositories are accessed through the HTTP and HTTPS protocols.
We recommend installing a web-server frontend and using the webserver protocols (HTTP and HTTPS) for integration with Creatio.
2. Create a user on the SVN server
To access the SVN server, add at least one SVN user. We recommend creating a separate user for each developer.
You can create an SVN server user with the standard tools supplied with the SVN server installation package, for example, VisualSVN (Fig. 1).
Working with the Creatio repository requires password-based authentication.
3. Create a repository on the SVN server
Create an SVN repository using the standard tools supplied with the SVN server installation package (i.e., VisualSVN and CollabNet).
4. Install SVN client (optional)
You can optionally install an SVN client in the developer workplace, for example, TortoiseSVN.
Installing an SVN client is not required since it does not affect the Creatio operation. Using an SVN client is convenient for viewing the local working copy, history, revert operations, review, etc.
Connect the repository to Creatio
To connect an SVN repository to Creatio:
Copy the URL of your repository. For example, in VisualSVN, right-click the repository → Copy URL to clipboard (Fig. 1).
Click in the main Creatio application. The System Designer will open.
Click Advanced settings in the Admin area to open the Configuration section.
Click Open list of repositories on the Actions tab (Fig. 2).
Click Add on the list toolbar (Fig. 3). A page for the new repository will open.
In the new repository page, specify the repository data (Fig. 4).
Name – repository name.
Storage address – the network address of an existing SVN repository. Insert the URL that you copied on step 1 of this instruction.
The HTTP protocol (standard network protocol), HTTPS protocol (standard network protocol secured with SSL encryption), and SVN protocol (own network protocol of the Subversion system) are all supported in repository addressing.
Active – select this checkbox to enable using the repository in the system operation. Each new repository is marked as active by default.
Click the repository in the repository list → Authenticate (Fig. 5).
Authenticate to your SVN repository using one of the users you have created on your SVN server (Fig. 6).
As a result, your SVN repository will be connected to Creatio. Use the new repository to create custom packages and install the created packages in the workspace.
Learn more about working with packages using SVN, transferring changes using SVN, and working with SVN in general in our SDK guide.