如果我试图更新我的subversion repo,它说我必须运行清理。如果我运行清理,它会显示一个文件丢失。(我删除了今天早上在我的家庭电脑上未能提交的文件的MASSIVE目录,但后来我从工作中提交了相同的文件集,现在我的家庭回购崩溃了)。所以,清理的意思是:

Cleanup failed to process blablabla Can't set file blablabla read-write:系统找不到指定的文件。

如果我更新它说:

命令:更新错误:上一个操作尚未完成; 如果它被中断,请运行'cleanup' “清理”命令。完成了!:

我怎么才能把它弄出来呢?


当前回答

我最初在尝试用TortoiseSVN签入时遇到了这个问题。最初,TortoiseSVN清理和控制台svn清理都失败了,消息与原始海报相似。

但我的解决方案(偶然发现的)只是等几分钟。我认为TSVNCache在签入时保留了其中一些文件。

其他回答

我也遇到过类似的情况。您尝试过从工作区的根目录运行清理工作吗?我知道有时从子目录(问题所在)进行清理不起作用,而从工作空间的根目录进行清理则可以。

如果仍然失败,因为您已经删除了某个地方的子目录。尝试从子目录中删除更高一级(假设不是根目录),并重新尝试更新和清理。

如果任何级别的清理尝试都没有成功,那么不幸的是,答案是签出一个新的工作副本。

我看到过svn的几个问题,包括这个问题,通过删除/创建.svn/tmp目录解决了这个问题。然后执行svn cleanup命令

我也遇到过类似的问题。运行进程资源管理器显示另一个程序(notepad++)具有SVN试图删除的文件夹的文件句柄。当我关闭notepad++时,“清理”能够成功运行。

我有一个错误,如“无法更改文件'/Users/Code/UnitTest.cpp':没有这样的文件或目录”。subversion会对一个不再存在的文件感到困惑。我简单地做了一些类似于“echo ABCD >> /Users/Code/UnitTest.cpp”的事情来创建文件的副本,然后清理。它工作。

当你的文件打开时,试图运行清理给我带来了问题。当我关闭我的应用程序(Visual studio),我运行清理,它是成功的