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

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

如果我更新它说:

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

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


当前回答

对我有用的变通方法:

剪切目录的内容并将其复制到另一个文件夹。 从命令行对空文件夹运行清理。 将文件复制回原始文件夹。

完成了,但我无法解释为什么会这样。 如果您不删除这些文件,cleanup命令会说他无法读取/写入这些文件。

其他回答

我尝试将.svn文件夹移到其他位置,并将其放回相同的根文件夹中。当我尝试更新SVN时,它更新了。我不知道具体是怎么回事。

遵循以下步骤。

1)通过svn进入无法成功清理的目录。(根文件夹或子文件夹)。

2)选择目录下的。svn文件夹,将该文件夹剪切并粘贴到单独的驱动器或单独的位置(svn目录外)

3)现在回到目录-右键单击并选择TortoiseSVN——>Repo-browser

4)签出文件夹(不会进行新鲜签出)。

5)你所有的项目会重新版本,修复svn的内部问题,问题应该会解决。

对我有用的变通方法:

剪切目录的内容并将其复制到另一个文件夹。 从命令行对空文件夹运行清理。 将文件复制回原始文件夹。

完成了,但我无法解释为什么会这样。 如果您不删除这些文件,cleanup命令会说他无法读取/写入这些文件。

通常不需要新的签出或复制。

我刚刚解决了一个类似的问题,与错误“先前的操作尚未完成”的帮助下(链接)

svn在处理命令/操作时似乎有时会卡住。 所有这些操作都存储在.svn文件夹下的数据库文件wc.db中。

通过下载SQLite到我的结帐目录并运行

sqlite3.exe .svn/wc.db "select * from work_queue"

您可以获得所有挂起操作的列表。错误将这些操作称为“未完成”操作。

通过运行

sqlite3.exe .svn/wc.db "delete from work_queue"

所有旧的操作都从工作队列中删除,错误也消失了。 不需要新的收银台什么的

在我的例子中,当试图从IDE内提交时出现了错误。当我在浏览器中使用TortoiseSVN执行相同目录的提交时,操作成功。