这个错误信息通常在你更新工作拷贝时出现,可能的原因有两个:
- 版本库中有两个文件的名字只是大小写不同,这在Windows下是不允许签出的,因为Windows的文件系统是大小写不敏感的。很可能其中一个文件是误添加的,所以你要找出是哪一个,然后删除它,以确保不会把更改提交到错误的文件。
- 某个文件的文件名是非法的(对Windows来说非法),比如,"con", "lpr", "com"都是非法的,因为这些都是设备名。当然,含有"/\*?:|"和其它特殊字符在Windows(NTFS 和 FAT)也是不允许的。
是,我们知道这个错误信息对解决问题没什么实质性的帮助,但这个错误信息是来自Subversion库的,我们改不了。
有几个办法可以避免这个问题:
Subversion 是针对大小写敏感的文件系统(比如 Linux
)设计的,这在大小写不敏感的Windows下有时就会有问题。一个典型的例子是,重命名文件时,如果文件名仅有大小写不一样,如Makefile改成
MAKEFILE。在工作拷贝中要这么干就有困难,因为Subversion在很短的一瞬间内需要让这两个名字并存,而Windows没办法支持。
目前为止最简单的方法是用版本库浏览器来重命名:
- 提交工作拷贝中的更改。
- 在版本库浏览器中将文件名由UPPERcase改为upperCASE。
- 更新你的工作拷贝。
posted on 2009-10-22 12:11
冰是没有未来的,因为它的永恒 阅读(2582)
评论(0) 编辑 收藏 所属分类:
subversion