Cant Commit - SharpSVN Repository Exception

1
Hello Forum, I'm attempting to commit changes in my branch that resulted from a merge from the mainline, and receive the following error message. Any ideas on what to do? Thank you! Ricky -- SharpSvn.SvnRepositoryIOException: Commit failed (details follow): ---> SharpSvn.SvnRepositoryIOException: At least one property change failed; repository is unchanged ---> SharpSvn.SvnRepositoryIOException:  Attempted DAV:set operation could not be completed due to other errors. ---> SharpSvn.SvnRepositoryIOException: PROPPATCH of '/56273b94-cdaf-4784-a844-f038fe696f51/!svn/txr/2086-1nm/branches/S2branch': 207 Multi-Status    --- End of inner exception stack trace ---    --- End of inner exception stack trace ---    --- End of inner exception stack trace ---    at SharpSvn.SvnClientArgs.HandleResult(SvnClientContext client, SvnException error, Object targets)    at SharpSvn.SvnClient.Commit(ICollection`1 paths, SvnCommitArgs args, SvnCommitResult& result)    at Mendix.Modeler.VersionControl.SvnConnector.PathClientDo(String workingCopyPath, Action`1 action) in C:\jenkins-ci\workspace\AppStudio3.0-Build@2\modeler\Mendix.Modeler.Core\VersionControl\SvnConnector.cs:line 805    at Mendix.Modeler.VersionControl.SvnConnector.Commit(String projectDir, SvnCommitArgs commitArgs) in C:\jenkins-ci\workspace\AppStudio3.0-Build@2\modeler\Mendix.Modeler.Core\VersionControl\SvnConnector.cs:line 757    at Mendix.Modeler.VersionControl.RevCommitter.<>c__DisplayClass35_0.<CommitToRepository>b__0() in C:\jenkins-ci\workspace\AppStudio3.0-Build@2\modeler\Mendix.Modeler.Core\VersionControl\RevCommitter.cs:line 485    at Mendix.Modeler.Utility.ActionUtil.TryNTimes[TException](Action action, Int32 n, Int32 sleepBetweenTries) in C:\jenkins-ci\workspace\AppStudio3.0-Build@2\modeler\Mendix.Modeler.Utility\ActionUtil.cs:line 29    at Mendix.Modeler.VersionControl.RevCommitter.CommitToRepository(IProject project, String message, RevisionMetadata metadata) in C:\jenkins-ci\workspace\AppStudio3.0-Build@2\modeler\Mendix.Modeler.Core\VersionControl\RevCommitter.cs:line 487
asked
3 answers
19

This situation is caused by a bug in the Modeler that exists in 7.19 and up. When merging a branch, the Modeler tries to automatically fix conflicts on the "svn:ignore" property. That property is where Subversion keeps track of files that should be ignored, i.e. on disk but not committed to the Team Server.

If there is both a change on the branch and on the main line in that property, the Modeler resolves the conflicts by simply combining both lists. However, we made the mistake of using Windows newlines instead of UNIX newlines and the Subversion server does not like this.

We will fix this bug in 7.23.0 and fortunately, there is a workaround that does not require upgrading. When you are in the state where you cannot commit the results of a merge, perform the following steps:

* Open the project folder via the Desktop Modeler by choosing "Show project directory in Explorer" from the project menu
* Right-click the white background of the project folder
* TortoiseSVN > Properties
* Double-click the "svn:ignore" line
* Copy all text by doing Ctrl+A, Ctrl+C
* Paste into a new document in Visual Studio Code (or another editor that understands newline conventions)
* In the bottom right, click on "CRLF" and select "LF" instead
* Copy all text by doing Ctrl+A, Ctrl+C
* Go back to window showing the "svn:ignore" property
* Paste there: Ctrl+A, Ctrl+V
* Click "OK"
* Click "OK"

You can commit again, from the Desktop Modeler!

Update: I’ve written down everything about this and related issues in a forum post. See https://forum.mendix.com/link/questions/92813

answered
0

If something like this happens I recommend to have a look at the project status in TortoiseSVN.  If I recall correctly, then version 1.7.15 is the recommended working version.

https://sourceforge.net/projects/tortoisesvn/files/1.7.15/

hope this helps!

 

answered
0

Received the following response from Mendix on the issue:

  • Install TortoiseSVN, as suggested in System Requirements. Use version 1.7.x, which can be downloaded here.
  • Open the project folder via the Desktop Modeler by choosing Show project directory in Explorer from the project menu
  • Right-click the white background of the project folder
  • Select TortoiseSVN > Properties
  • Double-click the svn:ignore line
  • Copy all text by doing Ctrl+A, Ctrl+C
  • Paste into a new document in Visual Studio Code (or another editor that understands newline conventions)
  • In the bottom right click on CRLF and select LF instead
  • Copy all text by doing Ctrl+A, Ctrl+C
  • Go back to window showing the svn:ignore property
  • Paste there: Ctrl+A, Ctrl+V
  • Click OK to close the svn:ignore property dialog
  • Click OK to close the properties dialog.

Seems to work.

answered