我一直试图将目录结构从一个位置移动到Subversion中的另一个位置,但我得到一个项目“*”是过期提交错误。
我已经检查了最新的版本(据我所知)。SVN st -u除了mv命令外没有其他区别。
我一直试图将目录结构从一个位置移动到Subversion中的另一个位置,但我得到一个项目“*”是过期提交错误。
我已经检查了最新的版本(据我所知)。SVN st -u除了mv命令外没有其他区别。
当前回答
如果你正在使用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的博客
其他回答
如果一旦解决了类似的问题,只需签出一个新的工作副本,并用这个新签出的目录替换抛出提交错误的.svn目录。在我的例子中,原因是在存储库损坏和从备份恢复之后,工作副本指向一个在恢复的存储库中不存在的修订。还得到了“项目过期”错误。在提交之前更新工作副本并不能解决这个问题,但是替换上面描述的.svn可以解决这个问题。
我有时会在windows上使用TortoiseSVN。对我来说,解决方案是svn更新目录,即使没有需要下载或更新的修订。它对元数据做了一些事情,神奇地修复了它。
当我用主干中的文件更新早期版本的一个分支时,就发生了这种情况。我使用Windows资源管理器从主干签出文件夹中复制文件夹,并将它们粘贴到发布分支签出文件夹的Eclipse视图中。现在Windows资源管理器被配置为不显示以“。”开头的“隐藏”文件,所以我没有注意到所有错误的.svn文件被粘贴到我的发布分支签出文件夹中。哎!
我的解决方案是删除损坏的Eclipse项目,再次检出它,然后更仔细地复制新文件。我还更改了Windows以显示“隐藏”文件。
更isyly使这个:
1)我复制我的修改代码在一个记事本。 2)下一步,更新文件。 3)将记事本的代码复制到更新后的文件中。 4)在svn中提交。
错误是因为你没有更新特定的文件,首先更新,然后才能提交文件。