it-swarm.cn

响应MKCOL的Subversion错误:(不允许使用405方法)

尝试提交新目录时,出现以下错误。

svn: Commit failed (details follow):
svn: Server sent unexpected return value (405 Method Not Allowed) in response to MKCOL request for '....

我从未见过此错误。我该如何解决这个问题?

解决方案
我设法解决了这个问题:

  • 删除出现问题的文件夹的父目录。
  • 执行SVN更新。
  • 存储库中已经存在一个与新文件夹同名的文件夹。
  • 删除该文件夹。
  • SVN提交。
  • 复制新文件夹,添加时间表和SVN提交。
65
Sergio del Amo

此错误通常表明您要添加的文件夹已经在存储库中已存在-您最近是否进行了更新,或者是否从头开始进行了非递归检出?

我以前曾遇到此错误-找到了一个博客,告诉我问题出在哪里。解决方案稍微复杂一点,从我的工作副本中删除有问题的目录(将其复制到其他地方),运行递归更新,然后手动将两个目录合并在一起。

编辑:Opps-已在问题正文中回答。在这里,我为我知道一个未解决的问题的答案而感到非常兴奋:)

44
andrewc

我在Googlecode上的MKACTIVITY有类似的问题。这是因为我已经用http:签出了存储库,但是签到需要https:。

8
Troy Daniels

我遇到了相同的错误并设法解决了这个问题:

  1. SVN将有问题的目录重命名为“ foo”或其他名称
  2. SVN提交
  3. SVN重命名回您想​​要的名称
  4. SVN提交

我不确定这在所有情况下是否都有效,但是比删除父目录更简单。

5
Sam Dutton

您的svn储存库是否允许通过HTTP提交?一些存储库,例如SourceForge,允许通过HTTP 匿名检出,但要求开发人员通过svn和SSH检入。

4
Dave Cheney

就我而言,我在检入文件夹中的文件时遇到问题。我按照Sergio概述的步骤进行了一些更改。

  1. 复制了问题的父目录。
  2. 复制目录中已删除的.svn文件
  3. svn删除/ parent_directory
  4. 承诺
  5. 在仓库中创建新目录
  6. 承诺
  7. 将子目录从复制的目录移到存储库
  8. 承诺
  9. 复制单个文件
  10. 承诺

我有一些遇到挑战的文件。我将它们从存储库中删除,但是使用新名称重新创建了它们。

3
Dawn Green

当我从SVN删除目录然后重新创建它时,出现了这个问题。当我提交新添加的目录时,SVN产生了此错误。我通过在新添加的目录上运行SVN,然后手动解决了冲突解决了问题。

2
imikay

使用托管的svn服务Unfuddle,当在OS​​ X Finder中通过文件复制践踏.svn时,我反复看到此错误。对我有用的svn咒语:

  • 还原
  • 更新
  • 使用远程URL删除文件夹
  • 添加并提交文件夹
1
xentek

备份文件夹。
删除存储库中的文件夹(使用Repo-Browser)。
再次提交。

对我来说很好。
马库斯

0
Marcus

在Eclipse中,很容易修复。

小组>切换到另一个标签/分支

选择,完全递归并选中将工作副本更改为指定深度

按确定

文件夹的图标更改。右键单击并(团队>)标记为已解决。

就是这样,现在您可以提交了。

0
juliangonzalez

就我而言,我要添加一个新目录,该目录假定我的本地(客户端)元数据已经存在于服务器上,而Cleanup无法纠正该目录。我备份了所有新文件和修改过的文件,删除了所有内容(根.svn文件夹除外),运行“更​​新”以还原文件,然后将备份的新文件和修改过的文件复制回目录中。我再次添加了新文件并成功提交。

0
stimpy77

我有类似的问题,我备份目录(出于安全考虑)而不是更新svn文件夹。之后,我可以再次提交。 (并且没有使用我的备份)

0
Ohad Cohen