我一直试图将目录结构从一个位置移动到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的博客
其他回答
就像@Alexander-Klyubin建议的那样,在存储库中进行移动。它也会快得多,特别是如果你有大量的数据要移动,因为你不需要再次通过网络传输所有的数据。
svn mv https://username@server/svn/old/ https://username@server/svn/new/
应该可以正常工作
如果一旦解决了类似的问题,只需签出一个新的工作副本,并用这个新签出的目录替换抛出提交错误的.svn目录。在我的例子中,原因是在存储库损坏和从备份恢复之后,工作副本指向一个在恢复的存储库中不存在的修订。还得到了“项目过期”错误。在提交之前更新工作副本并不能解决这个问题,但是替换上面描述的.svn可以解决这个问题。
我在删除一些目录后随机收到这个错误,每个目录包含一些文件。我通过Netbeans删除了这些目录,并意识到它实际上并没有删除它们。它似乎只是删除了目录中的所有内容,并在Netbeans中删除了对该目录的引用。但是它们仍然存在于文件系统中。确保它们从文件系统中删除,然后再次尝试提交。
为了安全起见,我把目录移到了本地机器上,然后svn删除了这个愚蠢的目录,然后提交。当我试图从我的本地机器添加文件夹时,它仍然抛出错误(SVN移动做了同样的事情,当我试图重命名文件夹)。因此我返回,然后执行mkdir DIRNAME,添加并提交。然后我添加内容并提交,它工作了。
我只是在几个文件夹中有同样的问题,这是我所做的提交:
1)在“团队同步”透视图中,右键单击文件夹>覆盖和更新 2)重新删除该文件夹 3)承诺并快乐起来