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

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


当前回答

我有时会在windows上使用TortoiseSVN。对我来说,解决方案是svn更新目录,即使没有需要下载或更新的修订。它对元数据做了一些事情,神奇地修复了它。

其他回答

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

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

将服务器和客户端升级到Subversion 1.9。

如果过期错误在正常情况下不会发生的情况下随机发生,则在运行提交时,可能表明您正在使用过时且不受支持的Subversion 1.7或更老的客户端或服务器。

为了解决这个问题,您应该升级服务器和客户端。请参阅相关的Subversion 1.9发行说明条目:通过HTTPv1提交时出现“过期”错误。

你是用svn mv来移动它,还是只用mv?我认为只使用mv可能会导致这个问题。

如果一旦解决了类似的问题,只需签出一个新的工作副本,并用这个新签出的目录替换抛出提交错误的.svn目录。在我的例子中,原因是在存储库损坏和从备份恢复之后,工作副本指向一个在恢复的存储库中不存在的修订。还得到了“项目过期”错误。在提交之前更新工作副本并不能解决这个问题,但是替换上面描述的.svn可以解决这个问题。

谢谢你!这就解决了我的问题。 SVN update——force /path to filename/

如果您最近在本地目录中的文件是相同的,则没有提示。如果文件是不同的,它会提示tf, mf等…选择mf(我的满)确保没有什么被覆盖,我可以提交时完成。

松鸦 CompuMatter