我们服务器定于在2011年11月24日晚10时进行搬迁到双线机房的切割。由于使用新的服务器、操作系统、软件版本,因此对于同步过去的版本库都有一个新的UUID。这造成了在我们搬迁后,大部分用户在原来的版本库基础上进行UPDATE或COMMIT,都会有以下的类型报错提示:
这句话的大概意思我解释一下,就是你准备UPDATE(或COMMIT)的版本库和服务器上的版本库的UUID不一致。
什么是UUID?按笔者的理解,大概是一个对应版本库的唯一ID号,SVN应该是使用这个ID来识别两个版本库是否同一个版本库的机制。
很幸运的是,SVN提供了工具可以让我们更改这个UUID。因此,在你碰到这个错误,您可以有两种解决方法:
使用第二种方法的时候请注意:如果您或您的开发团队已经在搬迁后重新CHECKOUT过,那建议不要再去更改项目的UUID,否则您可能需要再重新CHECKOUT才能正常工作;
但如果您或您的开发团队在搬迁后未曾重新CHECKOUT,而且重新CHECKOUT对您们来说影响很大,那用第二种方法无疑是明智的选择。
注:UUID的恢复只有项目的创建人才有权限进行。
恢复旧的UUID成功后,您将不需要重新CHECKOUT,马上就可以在原来源码版本的基础上进行UPDATE或COMMIT了。