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

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


当前回答

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

其他回答

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

就像@Alexander-Klyubin建议的那样,在存储库中进行移动。它也会快得多,特别是如果你有大量的数据要移动,因为你不需要再次通过网络传输所有的数据。

svn mv https://username@server/svn/old/ https://username@server/svn/new/

应该可以正常工作

如果你正在使用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的博客

更isyly使这个:

1)我复制我的修改代码在一个记事本。 2)下一步,更新文件。 3)将记事本的代码复制到更新后的文件中。 4)在svn中提交。

我设法通过点击更新按钮来解决这个问题