This section contains a number of popular errors that people get and possible solutions to avoid or to work around the situation.
This error message typically occurs when you try to update your working copy.
The reason for this error is either:
or
And yes, we know the error message isn't really helpful in this case. But the error message comes from the Subversion library, which we can't change on our own.
There are several ways to solve the problem and to prevent it from happening again. Take a look at these instructions.
There is a server hook script available at: http://svn.collab.net/repos/svn/trunk/contrib/hook-scripts/ that will prevent checkins which result in case conflicts.
If you already have two files with a name that differs only in case, you have to decide which one of them you want to keep and delete (or rename) the other one from the repository.
There are (at least) two possible solutions to rename a file without losing its log history. It is important to rename it within subversion. Just renaming in the explorer will corrupt your working copy!!!
Solution A) (recommended)
Solution B)
People who report this error often state that it happens randomly, and often part way through a large commit. Retrying the commit may succeed, or it may fail at a different point.
The most likely cause is a virus scanner holding a file handle open when it shouldn't. Try disabling the scanner, or get it to ignore your repository.
Similar errors can occur in your working copy. Try ignoring the .svn folder there.
This error message typically occurs when you try to update your working copy. It is thrown because Subversion never deletes or overwrites existing local data. There may be three reasons why you get this error:
There are several ways to solve the problem and to prevent it from happening again. Take a look at these instructions.
When upgrading to version 1.4.x, you suddenly can't access your repository anymore. Every try is rejected with the error message:
OPTIONS of 'path': 401 Authorization Required 'url'
The reason for this is the automatic authentication with SSPI which is activated in version 1.4.x. That means TortoiseSVN now tries to authenticate automatically with the credentials of the user logged on to the Windows domain controller.
If you have set up your server to authenticate with SSPI against a domain controller, and the domain controller does not have the user account GUEST enabled, you should be fine. But if the user account GUEST is active, then all authentication succeeds with that user - and you usually won't give the user GUEST access to your repository. That's why the authentication succeeds, but the authorization fails.
Another reason why it can fail is if you have set up different accounts for the repository access than you use for logging in to your workstations (although then I wonder why you are using SSPI authentication in the first place).
To solve this issue you have the following options:
The full error message is:
This client is too old to work with working copy '.'; please get a newer Subversion client.
You will get this error message once you have used a Subversion client linked with a higher Subversion version, and then try to execute a command with a Subversion client linked with an older version, e.g., you used an 1.4.x client on your working copy, and now you try an svn 1.3.x client on the same working copy.
The reason for this is that Subversion 1.4 and 1.5 upgrade the working copies transparently on every command. But once the working copy format is upgraded, older clients can't access the working copy anymore because they don't know the new format.
The only solution to 'fix' this is to upgrade whatever client you use and that gave you this error message.
Or do a fresh checkout with the older client.
After upgrading TSVN to 1.2.0 from 1.1.7, when I do an update I get "unknown
hostname abc.net". Uninstalled 1.2.0 and reinstalled 1.1.7 and all is well.
Some firewall programs detect program changes and silently disallow access to the network. In this case, fixing ZoneAlarm's settings for TSVN solved the problem.
You will get this error message when you are trying to commit changes you made to your working copy. Normally this happens, because somebody else has changed the same file(s) in the repository as you have.
That means you need to use the Update command to update your working copy to the same level as the repository.
It may not be obvious why you need to do this, especially if you know the repository has not changed. The answer is simply that your working copy is not completely updated by a commit. Only changed files and folders get updated automatically. Consider this example on a newly created repository:
Add Folder in revision 1
Add File1 and File2 in revision 2
Modify File1 and commit in revision 3Now the repository is at revision 3, but in your working copy the revisions look like this:
Folder : revision 1
Folder/File1 : revision 3
Folder/File2 : revision 2Now if you modify File2 and try to commit, it fails. The client tells the repository that File2 is at revision 2 with local modifications, but the repository is already at revision 3. If you then do an update, File2 will be at revision 3 as well (and of course your local changes will still be there).
The same thing may happen if you try to create a branch or tag. The answer is always the same:
If your working copy is out-of-date, update it!
There are many error messages which can be thrown by apache when you try to access your repository. Most of these errors do not have anything to do with TortoiseSVN, but hint at some server misconfiguration. It is also possible that you have simply entered wrong repository URL.
To solve the configuration problems, the FAQ isn't quite the right place, because we need to know a lot more about your server setup. Please come to our mailing list at dev@tortoisesvn.tigris.org and ask your question there. Also, the Subversion mailing list users@subversion.tigris.org might be an even better idea for server configurations.
These error messages hint at configuraton problems:
REPORT request failed on '...' REPORT of '...': 400 Bad Request (http://...)
You're behind a firewall which blocks DAV requests. Most firewalls do that.
Either ask your Administrator to change the firewall, or access the repository with https:// instead of http:// like in https://svn.collab.net/repos/svn/
That way you connect to the repository with SSL encryption, which firewalls can't interfere with (if they don't block the SSL port completely).
PROPFIND request failed: 403 Forbidden
It's probably because you've entered the parent path of your repository instead of the actual repository path. Try appending the name of the repository you wish to access to the URL. You also need to append the URL with a trailing '/' slash, after the repository name.
For more information about the actual error, seek out the Apache error log.
PROPFIND Request Failed - Error 405 HTTP Method Not Allowed
This message comes in different flavours. You might be seeing this error when:
Another possibility for this error is a virus scanner/firewall you have running on your machine. A lot of those filter out DAV requests without you even noticing it. Try disabling the scanner/firewalll.
For more information about what actually caused the error, seek out the Apache error log.
The Apache 501 "Not Implemented" error is caused by a regression bug in the subversion 1.2.1 libraries. The "svn st -u" command of subversion 1.2.1 is incompatible with subversion 1.1.x servers. This normally happens when you "check for modifications" against old servers in TortoiseSVN.
TortoiseSVN can't do anything about this.
You can either:
- upgrade the server to subversion 1.2.1
- downgrade the client to 1.2.0 or earlier
- don't use the "check for modifications" dialog in TortoiseSVN against old servers.
- wait until the subversion team releases the 1.2.2 libraries.
Apache doesn't start after adding svn:
Apache throws an Exception that the requested operation failed. When starting the server from console you get an Error:
Invalid command 'DAV' perhaps mis-spelled or defined by a module not included in the server configuration
Solution: uncomment the line LoadModule dav_module modules/mod_dav.so in httpd too.
If your server is Windows-based, typically in C:\\Program Files\\Apache Group\\Apache2\\logs.
If it's Un*x, try /var/log/httpd.
You will need to check the Apache error log yourself when you receive errors from eg. the Repo-Browser that looks like this: 'PROPFIND: Request failed - HTTP xxx'. The Apache error log contains a message describing the cause for these errors. The real error messages are unfortunately not propagated to Subversion clients like TortoiseSVN.
Go to the Network tab on TortoiseSVN's settings dialog. Set the SSH Client to TortoisePlink.exe.
Check the path to your repository (here /usr/local/repo) if it really exists on the server and check the permissions on that folder and its contents.
TortoisePlink uses the standard plink code, but is compiled as a Windowless app, so there's nowhere to send the error messages to. In TSVN settings->network, set the SSH client box to use standard plink, where the error messages are displayed in a command box. Once that is working, use TortoisePlink with the same parameters.
"could not write to standard output" means that Plink wanted to throw an error, but since TortoisePlink doesn't provide a DOS-box there's no standard output to write the error message to.
So something with the setup is wrong. Try with the normal plink program and see there what error message really is thrown and then fix the setup.
If normal plink just hangs, then the wrong params are passed to it (settings dialog, network tab).
Another possibility is that the SSH daemon is most likey not able to find the svnserve binary. Login with your target user (here myuser) into the server and type "which svnserve". If you dont see the path to the binary, make this file (and most likely the other subversion binaries) globally accessible to this user.