Dealing with 'svn: MERGE request failed'
Some knowledge nuggets for those weird server errors. 2008-04-02
We just had a strange issue with one of our subversion repositories. It only happens when using Apache and committing. The error message is less than helpful:
svn: MERGE request failed on '/svn/repo/trunk'
svn: MERGE of '/svn/repo/trunk': 200 OK (https://ourdomain.com)
So the '200 OK' message means that the commit occured ok on the server, but it didn't on the client. Therefore you'll have to execute an update command locally to sync back up. Pretty annoying.
If you search Google for 'MERGE request failed' you get a lot of questions and not a lot of answers, so hopefully this will help someone out. Our problem turned out to be our post-commit hook. We have a couple wget calls inside it that notify a couple servers of commits, and they were getting stalled because of a self-signed security certificate and dying out. Totally unrelated problem, but easily diagnosable: rename your post-commit hook and see if that fixes it.
An aside, that will help you in diagnosing, too: TortoiseSVN and other guis don't necessarily give you all the error output. If your post-commit hook is spitting out errors, you should commit via the command line, as that may give you more information. This also means that if you're migrating from svn:// to https:// like we are, make sure that your post-commits are ok, and that your certificates are valid!
Post-commit hooks don't run like normal scripts, too. In order to run them similar to how Subversion will run them, use the following command:
env - ./post-commit /var/svn/$REPO $REV
|