我一直试图将目录结构从一个位置移动到Subversion中的另一个位置,但我得到一个项目“*”是过期提交错误。

我已经检查了最新的版本(据我所知)。SVN st -u除了mv命令外没有其他区别。


当前回答

为了解决这个问题,我需要恢复有问题的文件,并更新我的工作副本,后来我再次修改了文件,在这些步骤之后,错误不再发生。

其他回答

当我用主干中的文件更新早期版本的一个分支时,就发生了这种情况。我使用Windows资源管理器从主干签出文件夹中复制文件夹,并将它们粘贴到发布分支签出文件夹的Eclipse视图中。现在Windows资源管理器被配置为不显示以“。”开头的“隐藏”文件,所以我没有注意到所有错误的.svn文件被粘贴到我的发布分支签出文件夹中。哎!

我的解决方案是删除损坏的Eclipse项目,再次检出它,然后更仔细地复制新文件。我还更改了Windows以显示“隐藏”文件。

当我试图提交一些文件时,我得到了这个错误,只有它是一个文件/文件夹,在我的工作副本中不存在。我真的不想经历移动文件和重新签出的麻烦,最后,我最终编辑了.svn/entries文件并删除了冒犯的目录引用。

当我试图从主干目录提交时,我刚刚得到了这个。从中继目录更新svn没有解决错误;但是,从父目录(. SVN目录所属的目录)进行SVN更新确实解决了这个错误。

我对发生的事情的猜测(在其他用例中,可能有多个原因导致这个“svn: E160024:资源过期;尝试更新”):沿着主干,有一个分支目录。我从GitHub拉了一个分支/分支-1到master。从父目录(即我的工作副本的根目录)而不是trunk进行svn更新,似乎在分支中除了trunk之外还做了一些事情。当我再次尝试时,没有出现错误。

然而,正如我上面所说的,这可能只是众多案例中的一个。

附注:与某些人建议的不同,我不认为在.svn目录中手动播放是一个好主意。

你确定你检查的是头部而不是较低的版本吗?另外,你是否进行了更新以确保获得了最新版本?

在http://svn.haxx.se/users/archive-2007-01/0170.shtml上对此有一个讨论。

我这样做了,对我很有效: 1. 备份你的文件。您可以简单地将代码复制到文本文件中。 2. 右键单击要提交>> Team >> Show History的文件。 3.在“显示历史”面板中,您将看到该文件的所有修订。右键单击文件>>的最新版本获取修订:它将覆盖您的本地更改。 4. 现在,将您的代码与最新文件合并到备份文件中(步骤#1)。 5. 同步并提交新合并的文件。