tags:

views:

5419

answers:

4

I recently upgraded to Subversion 1.5, and now I cannot commit my code to the repository. I get an error message: "403 Forbidden in response to MKACTIVITY". I know the upgrade worked because my fellow developers are not getting this issue. What's going on?

+10  A: 

Answering my own question:

Apparently my SVN URL had the wrong case! A Google search turned up an article (no longer available online) that explained what was going on. My URL was of the form http://svn.foobar.com/foobar but the actual repository was called http://svn.foobar.com/fooBar.

I use TortoiseSVN, so the fix was to use the Relocate command to correct the path to the repository.

Hopefully this will help someone else.

Todd Myhre
Thanks Todd. The link you have for "this article" doesn't seem to actually lead to the article. Try this: http://blog.alagad.com/2007/11/12/subversion-mkactivity-and-403-forbidden-headaches/
Josh
Todd, also meant to ask if you could post steps for reproducing the problem. Though our developers seem to have this problem occasionally, I am unable to reproduce it myself.
Josh
I have never been able to reproduce it consistently, but the fix works every time. As mentioned below, it is related to Windows' tendency to accept both case types where Subversion is more picky.
Todd Myhre
+2  A: 

We run into the periodically and it is very frustrating to developers. For some reason reading from the repository seems to be case insensitive but commit cares.

I understand the reason why case matters due to Subversion's roots in unix filing systems that are case sensitive, but I really wish you would get the error on the initial checkout not on the commit!

Rob Walker
Agree, getting the error doing checkout would be much better.
Stiefel
A: 

thanks you save my live

aldo
A: 

Another instance when this issue will rear its head is if you commit a file twice with the same name but with different capitalizations (e.g., foobar and FooBar). This is only possible, of course, on a windows system and may just be a special case of Todd's answer above. One of our developers accidentally did this and it similarly cost us many debugging hours.

Josh