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

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


当前回答

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

其他回答

直接在存储库中执行移动。

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

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

我在删除一些目录后随机收到这个错误,每个目录包含一些文件。我通过Netbeans删除了这些目录,并意识到它实际上并没有删除它们。它似乎只是删除了目录中的所有内容,并在Netbeans中删除了对该目录的引用。但是它们仍然存在于文件系统中。确保它们从文件系统中删除,然后再次尝试提交。

如果你正在使用github的svn网桥,很可能是因为github这边的东西发生了变化。解决方案很简单,你只需要运行svn switch,让它正确地找到自己,然后更新,一切都将工作。只需从签出的根目录运行以下命令

svn info | grep Relative 
svn switch path_from_previous_command
svn update

or

svn switch `svn info | grep Relative | sed 's_.*: __'`
svn update

这个解决方案的基础来自Lee Preimesberger的博客

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