当我这样做时svn st
,我得到这样的一行:
! + src/com/some_file.java
我已经从文件系统中删除了它,但它仍然显示出来。我明白那个 !代表未版本化的文件,但代表什么+
?
该文件存在于存储库中。如果我这样做svn up
了,该文件应该已从存储库中恢复,但没有任何反应。因此,在服务器启动期间,找不到该文件,并引发错误。
当我这样做时svn st
,我得到这样的一行:
! + src/com/some_file.java
我已经从文件系统中删除了它,但它仍然显示出来。我明白那个 !代表未版本化的文件,但代表什么+
?
该文件存在于存储库中。如果我这样做svn up
了,该文件应该已从存储库中恢复,但没有任何反应。因此,在服务器启动期间,找不到该文件,并引发错误。
“!” 表示“缺失”,而不是“未版本化”(“?”表示“未版本化”)。如果您使用文件系统方式删除文件,则会发生这种情况,但不是svn rm
.
恢复文件运行svn revert src/com/some_file.java
只是一个猜测:你告诉 SVN 你添加了这个文件(直接或通过一些插件),然后从磁盘中删除了这个文件。
在这种情况下,SVN 记得该文件已添加,但无法在磁盘上找到它。
如果猜测正确,您应该恢复添加操作。对于命令行,它是“svn revert”
您需要执行“svn rm”才能从存储库中删除文件(而不仅仅是从本地副本中)。如果它是无版本的,它不应该在存储库中,反之亦然。也许这是一个尚未提交的添加文件。“ svn rm ” 应该将它从要添加的文件列表中删除。