45

我最近升级到 Subversion 1.5,现在我无法将代码提交到存储库。我收到一条错误消息:“403 Forbidden in response to MKACTIVITY”。我知道升级成功了,因为我的开发人员没有遇到这个问题。这是怎么回事?

4

14 回答 14

54

回答我自己的问题:

显然我的 SVN URL 有错误的情况!谷歌搜索出现了一篇解释正在发生的事情的文章(不再在线提供)。我的 URL 格式为http://svn.foobar.com/foobar但实际存储库名为http://svn.foobar.com/fooBar

我使用 TortoiseSVN,所以解决方法是使用 Relocate 命令来更正存储库的路径。

希望这会对其他人有所帮助。

于 2008-09-11T17:34:13.697 回答
6

我们会定期遇到这种情况,这对开发人员来说非常令人沮丧。出于某种原因,从存储库读取似乎不区分大小写,但提交关心。

我理解大小写之所以重要,是因为 Subversion 源于对大小写敏感的 unix 文件系统,但我真的希望您在初始结帐时得到错误,而不是在提交时出错!

于 2008-09-11T17:49:01.663 回答
2

如果您两次提交同名但大小写不同的文件(例如,foobar 和 FooBar),则会出现此问题的另一个实例。当然,这只有在 Windows 系统上才有可能,并且可能只是上面托德回答的一个特例。我们的一位开发人员不小心这样做了,同样花费了我们很多调试时间。

于 2010-09-08T00:09:04.727 回答
2

托德是对的。愚蠢的是,repo 浏览器在签出时接受大写和小写,但如果签出时使用了错误的大小写,提交将失败。

我从https://svn.domain.com/Company/Product/trunk签出但无法提交,因为正确的 URL 是https://svn.domain.com/company/product/trunk

于 2011-02-09T14:52:24.327 回答
1

在作为客户端的 msWin 环境中,另一个可能的原因是代理设置。

配置:internet-explorer/internetOptions/connections/LAN-Settings/advanced/exceptions

将您的 SVN 服务器放在例外中。

名字可能是其他人,我不使用英语作为系统语言。

于 2014-09-26T13:36:42.387 回答
1

错误Access to 'foo' forbidden403 Forbidden指示您的用户帐户缺乏对请求的存储库的权限。由于存储库中的存储库名称和路径区分大小写,因此您应该检查输入的 URL 是否正确以及您使用正确的凭据登录。运行svn auth以查看客户端计算机上存储的凭据。

通常,Subversion 中的访问控制是以基于路径的授权的形式实现的,并且完全支持Read/WriteRead OnlyNo Access访问级别。如果您实施复杂的访问控制策略,您必须了解 Subversion 中的访问控制原则。阅读文章KB33:了解 VisualSVN 服务器授权以获取更多信息。虽然标题中写着“VisualSVN 服务器”,但这篇文章一般涵盖了基于路径的授权,并且应该适用于其他 SVN 服务器发行版。

于 2017-06-22T12:53:06.680 回答
1

我遇到过同样的问题。我尝试了上面提供的几个答案,但没有一个对我有用。我发现我安装了两个版本的eclipse,并且在之前的eclipse版本上安装了subversion。我已完成以下步骤来解决 403-forbidden-error:

  • 删除 subversion 文件夹 \AppData\Roaming\Subversion
  • 从 Eclipse 卸载颠覆
  • 安装颠覆
于 2019-04-26T07:49:49.093 回答
1

我有不再使用的凭据,但它们被记录在设置中。

删除这些旧设置就足以解决我的问题。

打开Tortoise SVN设置

  1. 保存的数据

    • 认证数据

      • 全部清除
  2. 刷新存储库

  3. 使用正确的凭据再次登录

于 2020-09-10T16:17:57.817 回答
0

我认为这里的问题是 Subversion(无论其服务器安装在什么操作系统平台上)区分大小写的。

但是,客户的操作系统可能不是。这可能会产生问题。

在我的公司里,我遇到过这种情况,我花了大约一个小时才弄明白。因此,一位在 mac 上工作的开发人员致力于使用相同名称的 svn 文件,但他将其名称中的几个字母改为大写字母。对于 mac 和 subversion,这不是问题,并且文件进入了。

后来,另一位碰巧在 windows 笔记本电脑上工作的开发人员遇到了一个错误,windows 完全糊涂了,什么也做不了。

所以,解决方案是 - 我问开发人员,我可以删除两个文件中的哪一个。我在 linux 上做到了,从那以后每个人都很开心。

所以,大写/小写拼写不是一个颠覆问题,而是一个 Windows 操作系统。

于 2014-03-28T22:59:32.273 回答
0

它发生在我身上,原因是我无权访问该文件夹。一旦管理员添加了我的用户,我就可以签出代码。

于 2014-04-01T17:36:38.393 回答
0

我遇到过同样的问题:

访问存储库条目时出错(403 Forbidden)

我发现了一些不同的方法。但对我来说,解决方案是:下载正确的插件(subclipse 1.4)版本以svn安装在服务器上1.4.3

于 2015-04-06T18:26:08.243 回答
0

用户/证书无权读取 svn 中的 repo。因此,您无法通过浏览器/乌龟访问存储库。与管理员交谈以解决此问题。

于 2016-07-18T08:51:04.803 回答
0

就我而言,问题是詹金斯正在通过代理。我在 Tomcat 的 catalina.properties 文件中给出了以下属性。

http.proxyHost=proxyserver
http.proxyPort=3128

为了指示它避免通过代理,我必须添加 http.nonProxyHosts 属性。多个主机可以用竖线 (|) 分隔

http.nonProxyHosts=localhost|*.companydomain.com

SVN 服务器在 Intranet 上。我不需要通过代理。

于 2017-06-15T07:24:56.573 回答
0

对我来说,更新正在工作,但提交操作给了我 403 禁止错误。我在进行电子邮件验证时解决了这个问题。

于 2018-05-14T06:27:21.727 回答