Subversion是一个自由/开源的版本控制系统。
使用版本控制软件有啥好处?
所有成员维护的实际是同一个版本库。人人为我,我为人人,无需专人维护所有文件的最新版本;
协同工作,大大提高团队工作效率,无论团队成员分布在天涯还是海角;
记录每个文件从诞生到最终完成全过程的每步细节,细度由提交人掌控。利于重用(reuse)以前的劳动成果。
及时了解团队中其他成员的进度。
资料共享,避免以往靠邮件发送文件造成的版本混乱的局面;
轻松比较不同版本间的细微差别,适用于纯文本文件(如STAAD命令文件)、MS OFFICE系列办公软件、WPS
OFFICE系列办公软件等,对于mathcad以及autocad等生成的二进制文件,目前只能靠肉眼比较。
SVN就是做这样一个版本控制的系统。
它将文件放在一个中心版本库里,这个版本库很像一个普通的文件服务器,不同的是它可以记录每一次文件和目录的修改情况。于是我们就可以借此将数据回复到以前的版本,并可以查看数据的更改细节。
SVN的版本库可以通过网络访问,从而使用户可以在不同的电脑上操作,允许用户在各自的空间里修改和管理同一组数据可以促进团队协作。因为修改不是单线进行,开发进度会进展迅速。
下面来讲一下SVN在Eclipse中的配置与应用。
1、安装Setup-Subversion-1.5.3.msi。
2、安装TortoiseSVN-1.5.5.14361-win32-svn-1.5.4.msi。
3、创建版本库。例子是在E盘创建目录E:\svn\repository,然后在这个目录下右键,TortoiseSVN->Create
Repository here...系统会自动生成许多文件。
4、配置用户和权限。打开E:\svn\repository\conf,修改svnserve.conf文件。
#[general]
#anon-access = read
#auth-access = write
#password-db = passwd 找到这3项,把前面的#去掉。然后修改passwd文件
#[users]
# harry = harryssecret
# sally = sallyssecret
把前面的#去掉。如果还想添加用户可以继续写,例如:admin=admin,格式为用户名=密码。
5、运行服务器。在任意目录下运行:运行: svnserve -d -r E:\svn\repository。
6、初始化导入。在E:\svn下建立Project的目录,在E:\svn\Project下建立三个文件夹,分别为trunk、braches、tags。trunk是工程的主干,branches存放工程的分支。创建之后把要发布的工程拷贝到trunk文件夹下面,只要src和webRoot就可以了。接下来在E:\svn\Project目录下右键,TortoiseSVN->Import...,在URL
of repository输入“svn://localhost/”然后就ok拉。
7、在myeclipse中的基本客户端操作。首先加入svn的插件,然后在打开svn资源库界面,在其中右键->New->Repository
Location...
在弹出的对话框中输入版本库的URL地址,本例为svn://localhost/,访问别人的可以输入svn://IP地址/,在svn资源库页面中会出现树形结构,在trunk文件夹上右键->Checkout,或者在eclipse中右键Import->在弹出的对话框中选择Other下面的,Checkout
Projects from
SVN,Next,选择资源库,Next,选择trunk,Next……这样工作就完成了。根据不同需要检出之后还需要进行相关的操作,这里就不具体介绍了。
8、svn在Eclipse中的操作。
检出--说完了。
迁出分支--一些都配置好了之后,在工程上右击,选择Team->Branch/tag...在braches目录下建立分支的目录,ok。
进入分支--分支就建立好了,还是右击Team->Switch to anthor
Branch/tag...,选择刚刚建好的分支文件夹,ok。
提交分支--现在自己的分支上面提交,右击,Team->Commit。
合并到主干--切换到主干,右击选择Team->Merge...在弹出的对话框中选择自己刚提交过的分支。然后单击show
Log按钮,按住ctrl选择自己修改过并提交的文件ok。
提交主干--在主干上右击Team->Commit。