最近做项目用到版本控制,一开始用了myeclipse8.0自带的cvs,后来发现cvs有点问题,使用起来不方便,而目前最为流行的也是被称为cvs替代品的则是subversion,即svn。

因为以前用到svn都是现有的服务器,自己只是使用一个客户端的形式使用,常用的TortoiseSVN-1.7.6.22632_zh。但是这次由于做项目是在内网,还没有现成的svn服务器,于是自己搭建。在网上查了下详细步骤,很容易的就搭建起来了,接下来连接myeclipse,同步后开始工作。

下面就为大家分享一下我的操作步骤。

1、安装下载好的windows版本的subversion。不要下载二进制的编译版本。安装后直接打开安装目录,这里小子全部默认了。即c盘program files目录下面的subversion,打开下面的bin目录,然后复制地址保留用于后面的使用。

2、安装TortoiseSVN客户端,在硬盘某个盘符下建立自己的版本库根目录。具体操作即建立普通的新文件夹,邮件选择TortoiseSVN菜单的在此处创建版本库。操作到这svn服务器和客户端的安装就基本完成了,下面就是配置了。

3、配置svn服务,使用sc命令建立新的service,格式为sc create svnserve binpath= “C:\Program Files\Subversion\bin\svnserve.exe –service –root D:\SVN” displayname= “svn” depend= tcpip start= auto,需要注意的是,sc命令后面参数名必须紧挨等号,等号后面必须跟上一个空格再写参数值。其他没什么问题。回车执行即可。如果执行后出现错误的提示,不必着急,打开service.msc,看看有没有名称为svn的服务,有的话回到命令提示符使用sc命令删除掉,具体如下(其中的C:\Program Files\Subversion\bin\部分为第一步保留的地址,D:\SVN为你的svn仓库地址)。
出现错误界面

删除操作如下

通过以上删除操作后,不要急于再次创建,打开subversion安装目录下面bin目录中的svn-rep-sharing-stats,运行一次后再次执行上面命令,直至创建成功,即出现success即可。然后的操作就是进入service.msc找到刚刚创建的名称为svn的service,可以看到是自动启动的,这里第一次需要你手动启动一下,这里不再赘述。

4、修改账户密码。在刚刚创建的形如D:\SVN的版本库中找到conf文件夹,下面有三个配置文件,分别是权限,账户和svn版本库的配置。(分别是authz、passwd、svnserve.conf)通常不使用权限配置的情况下只需修改svnserve.conf和passwd即可,打开svnserve.conf文件找到# password-db = passwd,把前面的#和空格去除,保持password前面是顶行的,然后保存。之后打开passwd文件,在[users]后面直接追加或者修改上面使用#注释的账户密码即可,这里我采用了test = test的测试账户。

全部就绪,其实就已经可以用了,因为是本地的服务器,仅供内网使用,使用的时候通过svn://192.168.1.254(测试用的ip)即可访问版本库。如果实现外网访问,则需要使用apache的关联(关于搭建外网可以访问的svn这里暂不描述)。

下面是针对myeclipse下使用svn插件进行版本控制的操作。

1、下载插件,这里使用site-1.8.7,可以是其他,我的是针对myeclipse8.0的,直接解压后将文件中features、plugins文件夹和artifacts.xml、content.xml、site.xml三个文件,直接覆盖到myeclipse安装目录下面的common目录下面。
如图所示

2、在myeclipse安装目录下的dropins目录下新建文本文件另存为svn.link,内容为myeclipse的common目录,具体如图所示。


需要注意的是,eclipse是java的,识别路径都是需要转义,所以有了如图所示的双斜杠。到这里配置基本没问题了。打开myeclipse,如果出现报错,直接确定,关闭,删除site.xml重新打开就没问题了。

3、myeclipse中使用插件,类似于cvs,在需要共享的项目上邮件选择team,如图。

打开后因为有cvs和svn两种功能,这里我们选择svn,如图。

紧接着下一步。

下一步。

下一步。

下一步。

确定保存后在myeclipse右下角可以看到如图所示界面。

在项目的地方所有文件都出现同步状态的图标,如图所示。

到此,操作已经完成,具体使用和cvs类似,就不再赘述。
补充一点,文章中涉及到的软件这里不再提供下载链接,大家可以百度谷歌找,真找不到联系我。