Subversion 与 WebDAV 相关知识解析
1. Subversion 认证与缓存
在使用 Subversion 时,系统可能会要求你提供凭证,这些凭证可以是用户名和密码、客户端证书,或者两者皆有。不过,如果你的仓库是公开可读的,那么在进行读取操作时就无需进行身份验证。
和 CVS 一样,Subversion 会将你的凭证缓存在磁盘上,具体位置是~/.subversion/auth/目录。若不想进行缓存,可以使用--no-auth-cache选项。但有一种特殊情况,当你通过 SSH 隧道使用svn+ssh://URL 方案访问 svnserve 服务器时,ssh 程序会无条件要求进行身份验证以启动隧道。
2. 从 CVS 转换到 Subversion
对于 CVS 用户来说,让他们继续在新项目中使用 Subversion 是熟悉新系统的重要方式。虽然可以将导出的 CVS 仓库直接导入到 Subversion 仓库中,但更完善的解决方案是不仅转移数据的最新快照,还要转移其所有历史记录。这是一个极具挑战性的问题,涉及在缺乏原子性的情况下推断变更集,以及在两个系统完全不同的分支策略之间进行转换等复杂情况。
目前有一些工具声称至少能部分支持将现有的 CVS 仓库转换为 Subversion 仓库,其中最受欢迎且可能最成熟的工具是cvs2svn( http://cvs2svn.tigris.org/