Can't commit to SVN server

核能气质少年 提交于 2020-01-12 18:47:36

问题


When I commit to the server this returns:

The POST request returned invalid XML in the response: XML parse error at line
3: not well-formed (invalid token) (/svn/site/!svn/me)

I am using VisualSVN Server 2.5.1 and the client is TortoiseSVN 1.7.1 64Bit.

The server by itself is working, I can update from repository or browse.

Any suggestions?


回答1:


You can use Fiddler2 as a proxy, and inspect the XML request/responses. Maybe that'll give you some more to go on. It looks like TortoiseSVN doesn't use WinInet, so the proxy won't be automatic. You'll need to set a proxy in the network panel of Tortoise. ex: localhost port 8888. Then you'll see data arriving in Fiddler. Shut down your browser and stuff so you don't have clutter. Now see if you can do something simple like view a log or commit a small change. You should see the packets, and then you can use the "inspector" on the right-hand panel to view the XML (use XML or RAW tab).




回答2:


Check your server's disk space. It's probably really low. Once you free some up it should work.

Edit: Reference = http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=2858308

Second Edit: Another suggestion would be to back up the files, delete the offending directory, update, restore changes, and then commit.

And another Post (http://osdir.com/ml/version-control.subversion.tortoisesvn.devel/2005-03/msg00140.html) discusses editing the SVN entries file.




回答3:


We had a very similar problem, but using Apache HTTPd server on Linux. TortoiseSVN 1.6 worked without error on XP/32. ToroiseSVN 1.7 on Win7/64 could checkout, but could not commit; it returned the error /svn/!svn/me path not found. Solution: added a missing "alias" directive to the httpd.conf section for svn.

The correctly-functioning httpd.conf section with the new alias directive looks like:

alias /svn /srv/svn/repos
<Location /svn>
  DAV svn
  SVNPath /srv/svn/repos
  AuthType Basic
  AuthUserFile /path/to/.htpasswd
  Require valid-user
</Location>



回答4:


I'm running VisualSVN Server 2.5 on Windows 2k8. Recently I upgraded my server and used Acronis Backup to transfer the current state of the server to a new SSD array in a new machine. Everything went smoothly, but when I attempted to commit a few files to one of the repos on this box, I got a very weird error:

The POST request returned invalid XML in the response: XML parse error at line 3: not well-formed (invalid token) (/svn/repo-name/!svn/me)

It turns out that with my particular case, this was a PERMISSIONS issue. After spending an hour and a half on this I finally tracked down a simple solution that "worked for me". The million dollar fix?

  1. Open the VisualSVN Server GUI.

  2. Right-Click on "VisualSVN Server (domain)" at the root of the left navigation pane and select "Properties".

  3. Under the General Tab, you will see a check box for "Automatically adjust permissions".

    A. If this is not checked, check it and click "Apply". This will stop and restart the VisualSVN service and should fix the issue.

    B. If this is checked, un-check it and click "Apply". This will stop and restart the Visual SVN service. Once complete, re-check the option and click "Apply" once more. After the service is restarted, the issue should now be resolved.

I hope this helps someone in need!




回答5:


I had exactly the same problem. When i used tortoise 1.6 I did get a better error message indicating access denied. Fixing the access on my server to the repositories fixed my problem.




回答6:


There are two possible reasons for the error:

  1. Service account under which VisualSVN Server runs does not have permissions to access

    • C:\Repositories\<repo>\ and/or
    • C:\Repositories\<repo>\db\,
    • C:\Repositories\<repo>\db\transactions\,
    • C:\Repositories\<repo>\db\txn-protorevs\.
  2. Some of folders located under C:\Repositories\<repo>\db\ are missing. E.g. the same

    • C:\Repositories\<repo>\db\transactions\ and
    • C:\Repositories\<repo>\db\txn-protorevs\.



回答7:


Also ensure that you haven't deleted the following directories within the repository store.

  • .../db/transactions
  • .../db/txn-protorevs

If you have, simply recreate them. They are usually empty directories.


I had this problem on a repository which had been working. I checked & modified the permissions as suggested in earlier posts but it didn't help.

What happened? I stupidly ran a program which removes empty directories. I had to create a new repository & do a comparison of the directory structure before realising my mistake.




回答8:


if you use an Tortoise SVN client: this is an authentication issue on your actual client and does not have anyting to do with your read/write permissions on the server or anything else.

right click on your working folder (copy) -> TortoiseSVN -> SVN Settings -> saved data -> authentication data and click clear all.

I had a similar issue and after reseting of my saved authentication data I was able to commit and update with no probs.

cheers.




回答9:


when i backup my svndb from another computer, i can not commit and tsvn return the same errors"The POST request returned invalid XML in the response..." i found the " YOURsvnDB\db\txn-current" file is different with my old svndb, after recovering it, the commit works well




回答10:


Hi if you use httpd as proxy, might be ownership of svn repository causing the issue. should be

drwxr-xr-x   apache apache   svnrepository

please make sure the configuration something like this subversion.conf



来源:https://stackoverflow.com/questions/7909089/cant-commit-to-svn-server

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!