SVN提交失败,访问被禁止

时间:2013-05-07 09:34:53

标签: svn tortoisesvn visualsvn visualsvn-server

最近我遇到了提交SVN的问题。我使用的SVN服务器是VisualSVN Server 2.5.9,客户端是TortoiseSVN 1.7.12。

首先,一个用户在向SVN提交文件时遇到问题。但该用户仍然可以访问存储库并下载更新。第二台PC上的第二个用户正常工作。但是今天,第二个用户遇到了与第一个用户相同的问题。

Commit failed

为什么会这样?如何解决问题?感谢。

9 个答案:

答案 0 :(得分:22)

如果问题出在客户端,这可能是导致错误的原因之一。

在客户端TortoiseSVN上保存

下的客户端凭据
  

乌龟设置/保存的数据/验证数据。

我尝试提交文件时遇到同样的错误,但我的凭据已更改。清除此缓存将在下次提交尝试时弹出一个重新输入正确凭据的弹出窗口。

答案 1 :(得分:21)

如果您的用户帐户缺少对存储库或存储库路径的访问权限,则可能会出现“Forbidden”错误;检查用户帐户的授权设置是有意义的。确保系统管理员未向您提供存储库路径的“无访问权限”。

如果您确定权限设置正确,请仔细检查您使用的网址。 Apache Subversion中的URL 区分大小写

此外,我建议您阅读有关Subversion和VisualSVN Server授权的文章:

答案 2 :(得分:2)

作为这两个软件包的新用户,我遇到了完全相同的问题。正如上面所发现的,我的解决方案是使用与存储库路径中相同的大小写字母。

以下是我觉得有用的提示:在VisualSVN中,您可以右键单击路径,然后单击“将URL复制到剪贴板”以在Tortoise中粘贴,以确保路径是相同的情况。

答案 3 :(得分:1)

实际上,我和你一样有这个问题。 我的windows是server 2008,我的颠覆信息是:

TortoiseSVN 1.7.6,Build 22632 - 64 Bit,2012/03/08 18:29:39 颠覆1.7.4, apr 1.4.5 apr-utils 1.3.12 霓虹灯0.29.6 OpenSSL 1.0.0g 2012年1月18日 zlib 1.2.5

我用这种方式解决了这个问题。 我用[group]选项。这个选项会产生问题。 我重写了authz文件内容。 我删除了组选项。我一个接一个地设定。 我用得很好。

感谢阅读。

答案 4 :(得分:1)

对我来说,解决方案是检查用户名是否区分大小写。许多人提到URL区分大小写,但似乎用户名也是如此!

答案 5 :(得分:0)

我无法提交csharp文件(* .cs)。最后问题是,在某些时候我安装了mod_mono,它通过其配置使* .cs文件无法访问。因此,如果只有某种文件无法访问,那么它可能是一个apache配置问题。

grep ".cs" /etc/apache2/mods-enabled/*
...
mod_mono_auto.conf:AddType application/x-asp-net .cs
...

答案 6 :(得分:0)

实际上,我和您有同样的问题。如果您的提交包含不同的目录,则可能会出现“ 禁止”错误;就像外部物品一样。

一步就解决了。在其他情况下,只需提交外部项目即可。

此外,我建议您阅读有关Subversion和VisualSVN Server中的外部项的文章:

VisualSVN团队有关日常使用指南外部项目的文章。解释了SVN中外部项目的原理。

https://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-externals.html

答案 7 :(得分:0)

我的问题是我的 SVN权限。

当尝试将文件提交到我每天工作了几个月的项目时,我遇到了同样的问题“禁止访问'/ svn / [我的路径] /!svn / me'”。尝试上述步骤后,我无法解决问题。我还尝试过从头开始撤消该项目,登录/注销SVN等。最后,我联系了我公司的IT部门,并出现了一个权限问题,该权限问题将我的访问权限从读取/写入更改为只读访问。 IT部门刷新了我的权限,这解决了问题。

答案 8 :(得分:0)

我在Mac中也遇到了类似的问题,其中svn选择Mac登录名作为用户名,而我却收到错误消息

svn: E170013: Unable to connect to a repository at URL 'https://repo:8443/svn/proj/trunk'
svn: E175013: Access to '/svn/proj/trunk' forbidden

我使用--username和svn命令来传递正确的用户名,这对我有帮助。 或者,您可以删除~/.subversion/auth文件,之后svn会提示您输入用户名。