今天发现前几天装的 subversion 居然没法通过 http 协议访问版本库!
Subversion 出现 svn: Unrecognized URL scheme for ‘http://…..’ 这样的错误提示。
检查 svn 客户端是否支持 http 协议,只需查看版本号:
shell> svn –version
看看输出是否有如下输出:
* ra_dav : Module for accessing a repository via WebDAV (DeltaV) protocol.
– handles ‘http’ scheme
– handles ‘https’ scheme
如果有,恭喜了,不用继续耽误您时间了。如果没有,后面告诉你怎么让它有。
我的 subversion 版本是 1.6.5,本来我看了 INSTALL 文件,预先编译了 neon,用的是最新的 0.29.0,然后指定了 neon 的路径。编译了 3 次,慢死了,结果还是没有,真邪门了。
后来 google 搜啊搜,注意到一个细节,说 configure 的时候,neon 配置出错,不会终止配置进程,只是给出几行提示信息,然后继续……
我重新 configure,看看 neon 的输出,居然看到下面几行:
checking neon library version… 0.29.0
You have neon version 0.29.0,
but Subversion needs neon 0.28.4.
An appropriate version of neon could not be found, so libsvn_ra_neon
will not be built. If you want to build libsvn_ra_neon, please either
install neon 0.28.4 on this system
or
get neon 0.28.4 from:
http://www.webdav.org/neon/neon-0.28.4.tar.gz
unpack the archive using tar/gunzip and rename the resulting
directory from ./neon-0.28.4/ to ./neon/
no suitable neon found
提示的意思是必须安装 0.28.4 版本的 neon,更高的版本都不行!
到此问题明朗,重新安装 0.28.4 版本的 neon ,然后重新编译 subversion 即可。
最后,我的 svn 也支持 http 和 https 协议啦!
谢谢了,呵呵问题解决了,原来真是少了个neon,不用安装neon的,只要按照他说的,下载之后解压放subversion的安装目录里面,改名就可以了。