Solve Known Version Control Issues

Last update: Edit

1 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:

2 Known Problems & Fixes

Below is a list of known problems and steps to fix them.

2.1 Getting an Error Containing SharpSvn.SvnAuthenticationException: Proxy authentication failed

Error dialog with 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.

Proxy settings

2.2 Getting an Error Containing Another SharpSvn.SvnAuthenticationException

This should be resolved if you sign out of Studio Pro and then log back in.

2.3 Getting an Error with the Message Connection timed out

Follow these steps:

  1. Open the \Users<username>\AppData\Roaming\Subversion\servers file with any text editor.
  2. Add the text http-timeout = 5000 under the section [global].
  3. Save the file.

2.4 Getting an Error with the Message <project folder> is already locked

Follow these steps:

  1. Install TortoiseSVN, as suggested in System Requirements.

  2. Go to the parent directory (folder) of your app project (this is the folder with the from the error message).

  3. Right-click to open the folder’s context menu and select TortoiseSVN > Clean up.

2.5 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.

  1. Rename \Users<username>\AppData\Local\Mendix\Settings.sqlite to Settings.sqlite.old.
  2. Restart Studio Pro.

2.6 Getting an Error with the Message SharpSvn.SvnRepositoryIOException: At least one property change failed; repository is unchanged

Follow these steps:

  1. Install TortoiseSVN, as suggested in System Requirements.

  2. Open the project folder via Studio Pro by selecting Project > Show Project Directory in Explorer.

  3. Right-click the white background of the project folder.

  4. Select TortoiseSVN > Properties.

  5. Double-click the svn:ignore property.

  6. Copy all text via Ctrl+A followed by Ctrl+C.

  7. Paste the text into a new document in Notepad++ (or another editor that understands newline conventions).

  8. In the bottom right, click CRLF and select LF instead (this will replace CRLF with LF).

  9. Copy all text again.

  10. Go back to the window showing the svn:ignore property.

  11. Replace the current content by pasting from the clipboard via Ctrl+A followed by Ctrl+V.

  12. Click OK to close the svn:ignore property dialog box.

  13. Click OK to close the properties dialog box.

  14. Restart Studio Pro.

You can now commit your app project.

2.7 Resolving Conflicts on the ‘svn:ignore’ Property

When merging or updating branches, a conflict is sometimes reported on the app project 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 project to Team Server.

2.7.1 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:

To resolve a conflict on the svn:ignore property, perform these steps:

  1. Install TortoiseSVN, as suggested in System Requirements.

  2. Open the project directory in Windows File Explorer

  3. 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):

  4. Copy all the lines starting with modeler-merge-marker to the clipboard.

  5. Click Manually edit property.

  6. Double-click the svn:ignore line in the grid.

  7. Paste the previously copied lines via Ctrl+A followed by Ctrl+V.

  8. Remove the special lines that start with <<<<<<<, =======, and >>>>>>>. For this example, we end up with the following combined ignore list:

  9. Click OK and then OK again to confirm the change.

  10. Right-click the white background of the project directory and choose TortoiseSVN > Edit Conflicts again.

  11. This time click Resolve using local property.

You have resolved the conflict and can commit from Studio Pro.

3 Other Problems

If the solutions here do not work for your version control problems, please submit a request to Mendix Support.

4 Read More