views:

35

answers:

2

When attempting to commit changes to SVN, I receive the following error:

Error: Commit failed (details follow):
Error: While preparing 'C:\Users\dan\Documents\Visual Studio
Error: 2008\Websites\admin\trunk\bin\SmtpDotNet.dll' for commit
Error: Can't write to connection: An existing connection was forcibly closed by the
Error: remote host.

I am running TortoiseSVN 1.6.9 and Subversion 1.6.12, the latest and greatest. Here are the facts uncovered so far:

  • It makes no difference how many files I attempt to commit, or which files
  • I can commit changes from other projects to the same server
  • Other people can commit changes to this project from their working copies
  • I tried checking out a new working copy, but I get the same error.
A: 

The message means the server really means to close the connection: it is intended. The most common issue are the access rights to the directory in the repository when this message appears.

I would urge to check the auth and svnserve.conf files on server side.

Alternative ideas:

  1. Clear the tortoiseSVN cached data and try again: TortoiseSVN -> Settings -> Saved Data
  2. Disable your firewall and try again. (should not be the issue as you mentionned it worked for other projects to the same server)
  3. Try using the command line client to see if it is maybe some bug (special character in path, mismatching casing or some other silly situation that makes the client or server fail)
jdehaan
No path-based auth is being done.
dansays
damned... That would have been too easy. And no user auth as well I guess, otherwise you would have been happy :-P ... Maybe it helps someone else somewhen.
jdehaan
A: 

Even though the error message tells you that the "connection was forcibly closed by the remote host", I doubt that the server closed the connection. The svn client only knows that the connection was closed while it tried to write data to it - who or what closed the connection isn't really known.

The file you try to commit is a binary file, and from it's name I gather it has code to do mail stuff in it. That's something that many virus scanners recognize as malicious. Which means it most likely is your virus scanner that's closing the connection, not the server itself. To make sure, you could check the server error logs - if there's nothing in there relating to your commit, then it wasn't the server that closed the connection.

Try disabling your virus scanner for the commit.

Stefan