今天遇到的问题,subversive (应该是最新的版本,直接用elilipse从官网安装) 安装于 eclipse3.5.2,在本地先用TortoiseSVN 将代码从服务器端checkout下来,然后生成eclispe项目,再在eclispe的workspace重新导入项目。
之后发现subversive 没有生效,java 项目没有和svn关联起来,表现在文件/目录/项目等的图标没有subversion相关的标志。这个问题通常容易解决,标准的做法就是在项目上右键 -> team -> share project,然后正常就会识别出本地已有的subversion版本信息,提示本地信息已经能够存在,之后选择直接使用本地已有信息即可。
这个老招数了,最近两三年来都一直有效。但是今天居然不好使了:team -> share project,居然不能识别subversion版本信息!
花了点时间,最后发现和SVN Connector有关,我选择了使用SVNKit,因为我们subversion服务器端用的是1.5.*版本,因此我选用了SVNKit 1.2.3 r5745 for SVN 1.5.6的版本,结果出问题了无法识别。试着换成SVNKit 1.3.0 r5847 for SVN 1.6.2,就可以识别TortoiseSVN checkout下来的信息。
试着看了一下我使用的TortoiseSVN 的版本,"TortoiseSVN 1.6.6, Build 17493 - 32 Bit , 2009/10/19 20:22:18",在版本信息中看到:
Subversion 1.6.6,
apr 1.3.8
apr-utils 1.3.9
neon 0.28.6
OpenSSL 0.9.8k 25 Mar 2009
zlib 1.2.3
这里有“Subversion 1.6.6”的字样,也许问题就是出现在这里吧,猜想TortoiseSVN checkout下来的svn是基于1.6.6版本,因此我需要使用SVNKit 1.3.0 r5847 for SVN 1.6.2才能识别。
没有时间仔细去拿各个版本TortoiseSVN / subversive 来做精确的验证,暂时问题解决了就算了。
有遇到类似的TortoiseSVN / subversive 信息无法识别的问题的朋友,可以试试我上面的方法。