如何修复颠覆“!”状态

颠覆手册指出:

'!'

项目丢失(例如,您移动或删除它,而不使用SVN)。 这也表明目录不完整(结帐或更新被中断)。

但是像Subversion一样,这个问题并没有说明如何解决这个问题。 通常我会使用我的信任的Fix_Subversion.command,但是这次它是主干,它将永远。

那么有没有更快的select?

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

黄金法则是:一旦svn控制某个东西,任何移动,删除,重命名,应该用svn命令(svn mv,svn rm等)来完成,而不是使用正常的文件系统/文件浏览器function。

运行后会发生什么情况:

 svn cleanup . svn update svn status 

我试图恢复和清理,但没有解决我的问题。 我find的解决scheme有点苛刻,但工作:

  1. 将old_folder重命名为new_folder。
  2. 从父母问题svn up old_folder
  3. 从new_folder复制文件[避免从new_folder处理.svn文件夹]。

我删除了new_folder,并以这种方式我设法有一个清理old_folder。

你在收到这个错误之前究竟做了什么?

如果你经常遇到SVN问题,你可能会做一些错误的事情(例如使用mv / rm而不是svn mv / svn rm )。

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