If you would like to upgrade to a newer long-term support version of Studio Pro, see Moving from Mendix Studio Pro 8 to 9.
Solve Known Version Control Issues
Introduction
Mendix Studio Pro contains a version control system that supports collaborating with team members. This document presents fixes that can be used when version control problems arise.
For more information and general help on version control, see the following documents:
Errors and Fixes
Below is a list of known errors and the steps to fix them.
Getting an Error Containing SharpSvn.SvnAuthenticationException: Proxy authentication failed
This error means that Studio Pro has problems reaching the version control server because of a proxy server.
The proxy settings can be changed in Studio Pro by selecting Edit > Preferences and then the Advanced tab. In the Proxy server section, you can change the proxy authentication settings. Fill in the correct User name and Password for the proxy server.
Getting an Error Containing Another SharpSvn.SvnAuthenticationException
This should be resolved if you sign out of Studio Pro and then log back in.
Getting an Error with the Message Connection timed out
Follow these steps:
- Open the \Users<username>\AppData\Roaming\Subversion\servers file with any text editor.
- Add the text
http-timeout = 5000
under the section[global]
. - Save the file.
Getting an Error with the Message <project folder> is already locked
Follow these steps:
-
Install TortoiseSVN, as suggested in System Requirements.
Mendix Studio Pro uses the Subversion 1.9 working copy. Previous versions of the Mendix Desktop Modeler used a Subversion 1.7 working copy. These working copy versions are NOT compatible. Always use the version of TortoiseSVN that matches your app model. If you open a local model from Mendix 7.x with the latest version of TortoiseSVN, you will no longer be able to open it in Mendix. -
Go to the parent directory (folder) of your app (this is the folder with the <folder_name> from the error message).
-
Right-click to open the folder’s context menu and select TortoiseSVN > Clean up.
Getting an Error with the Message System.Security.Cryptography.CryptographicException: Key not valid for use in specified state
Follow these steps to remove your user settings and restart Studio Pro.
- Rename \Users<username>\AppData\Local\Mendix\Settings.sqlite to Settings.sqlite.old.
- Restart Studio Pro.
Getting an Error with the Message SharpSvn.SvnRepositoryIOException: At least one property change failed; repository is unchanged
Follow these steps:
-
Install TortoiseSVN, as suggested in System Requirements.
Mendix Studio Pro uses the Subversion 1.9 working copy. Previous versions of the Mendix Desktop Modeler used a Subversion 1.7 working copy. These working copy versions are NOT compatible. Always use the version of TortoiseSVN that matches your app model. If you open a local model from Mendix 7.x with the latest version of TortoiseSVN, you will no longer be able to open it in Mendix. -
Open the project folder via Studio Pro by selecting Project > Show Project Directory in Explorer.
-
Right-click the white background of the project folder.
-
Select TortoiseSVN > Properties.
-
Double-click the
svn:ignore
property. -
Copy all text via Ctrl + A followed by Ctrl + C.
-
Paste the text into a new document in Notepad++ (or another editor that understands newline conventions).
-
In the bottom right, click
CRLF
and selectLF
instead (this will replaceCRLF
withLF
). -
Copy all text again.
-
Go back to the window showing the
svn:ignore
property. -
Replace the current content by pasting from the clipboard via Ctrl + A followed by Ctrl + V.
-
Click OK to close the
svn:ignore
property dialog box. -
Click OK to close the
properties
dialog box. -
Restart Studio Pro.
You can now commit your app.
Resolving Conflicts on the ‘svn:ignore’ Property
When merging or updating branches, a conflict is sometimes reported on the app folder rather than on an individual file. This usually means there is a conflict on the svn:ignore
property.
In the svn:ignore
property, Subversion records which files should be ignored. These are files that are on disk but should not be on Team Server.
For example, the deployment
directory is necessary for running your project, but it should not be on the Team Server. Each user has their own version of the deployment
folder on their hard disk.
You will need to resolve the conflict before you can commit your app to Team Server.
Example
In this example, we will focus on merging a branch into the main line. On the main line, the list of ignored files looks like this:
modeler-merge-marker
.mendix-cache
ResolveIgnoreConflict.mpr.lock
*.launch
ResolveIgnoreConflict.mpr.bak
node_modules
On the branch, the list looks like this:
modeler-merge-marker
.mendix-cache
ResolveIgnoreConflict.mpr.lock
*.launch
ResolveIgnoreConflict.mpr.bak
.project
.classpath
deployment
Merging the branch to the main line will result in the following information message:
svn:ignore
property.
To resolve a conflict on the svn:ignore
property, perform these steps:
-
Install TortoiseSVN, as suggested in System Requirements.
Mendix Studio Pro uses the Subversion 1.9 working copy. Previous versions of the Mendix Desktop Modeler used a Subversion 1.7 working copy. These working copy versions are NOT compatible. Always use the version of TortoiseSVN that matches your app model. If you open a local model from Mendix 7.x with the latest version of TortoiseSVN, you will no longer be able to open it in Mendix. -
Open the project directory in Windows File Explorer
-
Right-click the white background and choose TortoiseSVN > Edit Conflicts. The following pop-up window will be shown (resize the window to display all the information):
-
Copy all the lines starting with
modeler-merge-marker
to the clipboard. -
Click Manually edit property.
-
Double-click the
svn:ignore
line in the grid. -
Paste the previously copied lines via Ctrl + A followed by Ctrl + V.
-
Remove the special lines that start with
<<<<<<<
,=======
, and>>>>>>>
. For this example, we end up with the following combined ignore list:This includes both the lines from the main line and from the branch. The order is not important. -
Click OK and then OK again to confirm the change.
-
Right-click the white background of the project directory and choose TortoiseSVN > Edit Conflicts again.
-
This time click Resolve using local property.
You have resolved the conflict and can commit from Studio Pro.
Getting an Error with the Message SharpSvn.SvnRepositoryIOForbiddenException: Access to '/.../!svn/rvr/1/trunk' forbidden
If you get this error, try the following options:
- in Apps, check whether the user has access to the app:
- If they do not have access, invite them to the app
- If they do have access, remove them from the app and add them back – this will re-sync the access rules
- If the above does not work, make sure the WebDAV protocol is not blocked within your network – this protocol is required by Studio Pro for version control to work, but it might be blocked by your proxy server or other software like a firewall
Other Problems
If the solutions here do not work for your version control problems, please submit a request to Mendix Support.