如何修复Subversion«!»状态

时间:2010-08-02 16:16:24

标签: svn

Subversion手册指出:

  

'!'

     

项目丢失(例如您移动或   删除它而不使用svn)。这个   还表示目录是   不完整(结账或更新是   中断)。

但与Subversion一样,没有迹象表明如何解决问题。

通常情况下,我会使用我信任的Fix_Subversion.command,但这次它是主干,它将需要永远。

那么有更快的选择吗?

6 个答案:

答案 0 :(得分:59)

svn revert /path/to/file
svn rm /path/to/file      # if you want to delete it from svn itself

黄金法则是:一旦某些东西在svn-control下,任何移动,删除,重命名都应该用svn命令(svn mv,svn rm等)来完成,而不是使用普通的文件系统/文件浏览器功能。 / p>

答案 1 :(得分:18)

运行后会发生什么:

svn cleanup .
svn update
svn status

答案 2 :(得分:4)

我试图恢复&清理,但它没有解决我的问题。我找到的解决方案有点苛刻但有效:

  1. 将old_folder重命名为new_folder。
  2. 从父发行svn up old_folder
  3. 从new_folder复制文件[避免从new_folder处理.svn文件夹]。
  4. 我删除了new_folder,这样我就设法清理了old_folder。

答案 3 :(得分:1)

在收到此错误之前,您对分支做了什么?

如果您经常遇到SVN问题,那么您可能做错了(例如使用mv / rm而不是svn mv / svn rm分支)。

答案 4 :(得分:1)

如果您删除了一个文件并且标有!,请运行svn rm --force <filename>告诉SVN也从存储库中删除该文件。

答案 5 :(得分:1)

在我的情况下,我已经用一条消息提交了带有红色标记的父文件夹,然后清除了所有带有图标的嵌套文件夹,包括父文件夹。