1、svn简介
svn是Subversion的简称,它是一个开放的源代码版本控制系统,它提供了多人协作开发、代码存放、版本控制、权限控制的解决方案。简单来说,svn就是一套多人开发代码管理工具,利用它来完成我们的项目,实现code的服务器共享。
常见的代码管理工具主要有:集中式管理工具svn和分布式管理工具git,两者主要区别在于是否需要联网和是否有本地仓库管理code
①集中式管理工具svn
开发者和svn服务器能够联通,从服务器上获取最新的code资源
②分布式管理git
不需要联网,无网络时可以在本地的仓库上传提交,联网后再提交至服务器
2、SVN服务器安装&配置
2.1下载
下载SVN版本:VisualSVN-Server-2.1.9.msi=Apache+Subversion,傻瓜式安装,无需手动配置;
2.2安装
选择身份认证方式,采用http方式访问服务器(端口设置81):
启动SVN:
2.3配置
- 2.3.1新建仓库
一般公司里面的一个项目得有一个仓库来存放项目代码,而这些仓库是需要创建的。
- 2.3.2仓库目录结构
branches:分支,存放一些客户的定制需求code存放
tags标志:(里程碑)
trunk:主干,项目主要的普通code存放
- 2.3.3创建用户,配置权限
特定的仓库只有相关人员才可以访问,所以可以配置权限。配置权限一般需要创建用户,把用户放到组,直接把组赋权。
添加仓库人员:
分组管理:
设置权限:
访问ip设置,浏览器访问:
http://机器名(建议使用内网ip地址):81定义端口/svn固定字符串/ssm项目名称/
设置svn项目的http访问地址:http://WQ-20151227GUIL:81/svn/crm/ ,本地电脑上传ip地址,将访问地址http:// 192.168.0.109:81/svn/crm/发送给相应的用户:yif qiuyi
3、SVN客户端-TortoiseSVN使用
常见的SVN客户端:TortoiseSVN(小乌龟),SVN Eclipse插件;使用客户端可以方便开发者在本机上操作下载代码,不再依赖于http网页访问服务器。
3.1下载
3.2安装
傻瓜式安装,安装完成会提示重启或者注销系统!!重建图标:
3.3配置
运行LanguagePack_1.6.16.21511-x64-zh_CN.msi汉化
不要在文件夹上面点击右键
桌面空白的地方点击右键,svn,设置
3.4使用
- 3.4.1检出(check out)
访问地址:ip地址:svn服务器的端口/svn/项目(模块)名称
输入用户名、密码,download成功
- 3.4.2向SVN服务提交代码
不受SVN管理的代码先添加到缓冲区在提交
同步到服务器,还需要提交:
提交代码时一定要写注释,注释内容表示本次提交代码的作用:提交确认后,服务器相应的目录上就保存了此时提交的code文件
3.4.3提交完成后更新下载
3.5补充
图标说明:
绿色的勾:该文件和SVN服务器上的文件一致
蓝色问号:询问是否要纳入SVN做管理
蓝色加号:该文件和SVN上的文件不一致,需要你提交该文件到SVN上去(代表是新建的文件)
注意事项:
1)提交代码前可以要确保本地版本是最新
2)怎么看是不是最新,可以把当前代码比较
如果不是最新要先更新,更新分两种情况,一种是没有冲突,一种是有冲突。
没有冲突直接合并后提交。可能没有同时修改同一行
有冲突,同时修改同一个文件的同一行
解决冲突后再提交
3)解决冲突
强制替换成自己的!
强制使用别人的
建议使用:自己编辑冲突:两个都要保留,必须自己选择合并!!
自己修改代码,根据需要去包含t1的代码和t2(自己)的代码,修改完成之后
点击文件,右键:已解决
总结:
工作中提交代码都应该更新一次再进行提交,来防止当前代码与SVN服务器上code不一致(例:工作6点下班,晚上9点可能还有同事加班,修改了你的代码,第二天早上来你就应该先进行更新操作,再对更新后的代码基础上进行code)
即:每天上班的第一件事情,就是先把代码更新一下;再提交代码之前,也先更新,如果发现冲突,先解决然后提交!!!
4、SVN客户端- Eclipse SVN插件使用
简单地说,插件的作用就是把SVN客户端集成在Eclipse中,避免代码提交更新过程中开发工具的切换,提高团队开发的效率
4.1安装
解压安装文件夹,将文件夹放于dropins文件夹下:
重启Eclipse,弹出提示框,点击确认:
插件集成成功:
4.2使用
插件的使用有两种方式:
第一种:
1、从TortoiseSVN下载代码,以eclipse普通项目导入
2、导入后更新代码
3、比较现在开发中的代码和原工程是否有冲突,如有,做修改后确认提交
第二种(推荐):
导入项目