svn简介
SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。
SVN需要的软件下载地址
subversion: subversion下载地址
eclipse SVN插件:eclipse SVN插件
SVN的安装
安装按照步骤一步一步来,最后在path中配置环境变量E:\svn\Subversion\bin就可以了。
windows中SVN后台执行
需要将svn添加到服务中而不是每次都需要自己手动的启动,这时我们需要在windows中创建一个服务,并设置为自动启动。
此时查看我们计算机的端口占用情况,可以看到3690端口被SVN占用了。
SVN的基本流程
svn创建项目工厂
管理员在root包下为项目oa创建了一个工厂
一般是由后台管理员在SVN的根目录新建一个文件分配给我们的项目,我们的项目经理建立项目的基本架构,然后将项目导入到配置库中。这个时候会提示出现如下的错误。
这个原因就是我们没有对匿名的用户进行授权,进入到E:\svn\root\oa\conf\svnserve.conf中修改权限。
19 # anon-access = read 改为 anon-access = write 不要有空格
改过后就会出现如下的信息!
然后,每个程序员就需要将项目经理导入的项目导出到自己的本地进行编写,如下:
大型的项目同时肯定不止一个人开发,第一个程序员A完成了一个模块之后就需要将修改的部分提交到工厂中:
这样 另外一个程序员B就可以checkout修改后的项目了。
由于A程序员已经checkout过了,如果B进行了修改,A就不在checkout了而是update
总的来说基于命令的流程如下:
1.创建工厂 svnadmin create XXX
2.有项目经理创建项目,并导入工厂中
2.1 进入项目的文件夹
2.2 使用svn import完成项目的导入
3.有开发人员来checkout相应的项目
4.开发人员可以对项目进行开发,开发完成之后通过svn commit进行提交
5.其它开发人员只要checkout之后就可以通过svn update 来更新新的版本
就按照4,5的步骤周而复始的进行。
SVN过程流程图
常用的SVN命令
svnadmin create
svn import
svn checkout
svn commit
svn update
上面的采用命令来操作SVN
SVN的权限设置
假设sms项目有5个分,其任务分配如下
cms
-->1.admin(Zhang1)
-->2.ui-->2人(Li21,Li22)
-->3.code-->1人(Wang3)
-->4.test-->1人 (Zhao4)
修改E:\svn\root\cms\conf\password添加用户并设置密码:
Zhang1 = 123
Li21 = 123
Li22 = 123
Wang3 = 123
Zhao4 = 123
修改E:\svn\root\cms\conf\authz来修改每个角色的权限:
[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
g_admin = Zhang1 设置admin组的成员为Zhang1
g_ui = Li21,Li22 设置ui组的成员为Li21,Li22
g_code = Wang123 设置编码的成员为Wang123
g_test = Zhao4 设置测试的成员为Zhao4
[/]
@g_admin = rw admin组的成员能对项目的所有文件进行读写操作
* = r 其它组的成员只能对项目(除自己负责的那块)进行读操作
[/ui/js] Zhang21负责读写js
Zhang21 = rw
[/ui/html] Zhang22负责读写html
Zhang22 = rw
[/code] code组负责读写code
@g_code = rw
[/test] test组负责读写test
@g_test = rw
MyEclipse中配置SVN插件
将下载的插件包直接拷贝到MyEclipse的安装目录E:\MyEclipse\MyEclipse 10\dropins中,然后启动MyEclipse这时候加载会有点慢。
在MyEclipse中的项目中点击邮件选择team中的show Project 选择svn