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

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


当前回答

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

其他回答

“清理”会让你走上正轨。

右键单击svn文件夹,然后单击“清理”,如果你得到错误,就这样做。

我相信这个问题来自于.svn文件。在原父、新父或旧父中都是不正确的。我会试着回到你的出发点。使用导出可获得文件夹的干净副本。将干净的副本移动到新位置,并使用添加和删除操作进行移动。这是手动完成SVN所做的工作,但它可能有效。

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

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

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

尝试更新本地副本,并恢复有问题的项目,但仍然得到“过期”错误。出于某种原因,这种方法奏效了:

svn update --force /path/to/dir/or/file