不知道你们看到这里有没有疑惑?是不是在想svn update 和 svn status 到底什么区别,不都是检验修改么?仔细翻翻svn用户手册就会发现,svn revert , svn status 和svn diff这三个命令在没有连接svn服务器的时候也可以进行,为什么呢?细心的用户或者在windows上用过svn的用户就会发现,当前工作的svn文件夹里有一个./svn的文件,官方文档是这样说的“Subversion通过在.svn管理区域使用原始的版本缓存来做到这一点,这使得报告和恢复本地修改而不必访问网络,这个缓存(叫做“text-base”)也允许Subversion可以根据原始版本生成一个压缩的增量(“区别”) 提交—即使你有个非常快的网络,有这样一个缓存有极大的好处,只向服务器提交修改的部分而不是整个文件”。也许你已经明白了,是的,svn status是本地修改与.svn中的数据对比,而svn update是本地修改与服务器数据对比。两者的冲突是不一样的,svn status下的冲突是你跟之前checkout时服务器数据冲突,svn update下的冲突是当前时刻与服务器数据冲突。
以上操作均在redhat 5.5上测试通过。
更高级的操作请查看用户手册,多看看,有益无害。