SVN学习

1.   课程介绍

  • 1.  为什么需要SVN(掌握)
  • 2.  安装、配置SVN服务器(掌握)
  • 3. 安装、配置、使用SVN客户端(掌握)
  • 4. 使用Eclipse SVN插件(掌握)
  1. 多人协作项目管理的问题

2.1.  项目协作开发面临的问题

  1. 多人协作,代码放哪 ? 云端(服务器)!!
  2. 多人协作,如果出现代码冲突 ???  版本控制工具
  3. 在代码整合期间引发BUG ???     XXX工具

     想办法,在不影响现有项目的基础上,解决BUG。

  1. 多人协作,领导要看项目 ?? 只读权限 !!
  2. 项目版本的发布问题 ??

2.2. 

云端

 

 

各种版本统一管理

 

 

2.3.  集中式管理svn和分布式管理git

2.3.1.   集中式管理svn:必须联网(局域网,互联网)

 

2.3.2.   分布式管理git(oschina,github)

不需要联网都可以提交(先提交至本机),有网络之后再提交至服务器

 

 

  1. SVN服务器安装

3.1.  安装

 

方式1:VisualSVN-Server-2.1.9.msi

方式2:Apache+Subversion 自己手动做集成配置

 

 

 

 

 

 

  1. SVN服务器配置

4.1.  新建仓库(新建项目)

 

 

4.2.  仓库目录含义

branches分支   牛叉的分页组件

tags标志(里程碑)  正式版版本1,正式版2015版本

trunk主干  最新的代码,代码是不稳定的

4.3.  struts2 svn地址

http://svn.apache.org/repos/asf/struts/struts2/trunk

4.4.  在查看地址时,如果还没有用户, 会提示新建用户:

 

 

4.5.  配置用户权限:

 

 

  1. 禁用Everyone(No Access)
  2. 添加其他svn系统用户
  3. 给用户配置权限

4.6.  组的使用

 

4.7.  svn服务器项目访问的地址

http://机器名(建议使用内网ip地址):81定义端口/svn固定字符串/ssm项目名称/

 

http://192.168.1.254:81/svn/ssm/

  1. SVN客户端安装&配置

5.1.  客户端安装

 

 

 

安装完成会提示重启或者注销系统!!

5.2.  重建图标

 

5.3.  桌面点击右键看到如下:表示安装成功

不要在文件夹上面点击右键

桌面空白的地方点击右键

 

5.4.  汉化客户端

运行LanguagePack_1.6.16.21511-x64-zh_CN.msi汉化

桌面空白的地方点击右键,svn,设置

 

  1. 客户端常规操作

6.1.  检出(check out):第一次下载服务器的代码

访问地址:ip地址:svn服务器的端口/svn/项目(模块)名称

6.1.1.   通过局域网的ip地址来访问

http://192.168.1.2:81/svn/pss/

6.1.2.   通过机器名称来访问

http://itsource:81/svn/pss/

 

 

 

6.2.  更新:第2-n次以后操作:

 

 

6.3.  向SVN服务提交代码方案1:

6.3.1.   添加到缓冲区

变成蓝色+

 

 

6.3.2.   真正同步到服务,还需要

 

 

6.3.3.   总结

 

6.4.  向SVN服务提交代码方案2:使用频率比较高

直接提交

 

 

  1. SVN图标示意

有时候,因为电脑性能的原因,可能不会立即更新图标,大家不要太在意这个图标

 蓝色问号:询问是否要纳入SVN做管理。

 

 蓝色加号:该文件和SVN上的文件不一致,需要你提交该文件到SVN上去。(代表是新建的文件)

 

  绿色的勾:该文件和SVN服务器上的文件一致

 

  红色的感叹号:该文件和SVN上得文件内容不一致。(代表是文件受到更改)

  黄色感叹号:代表文件有冲突。

  灰色的减号:该文件或文件夹被SVN忽略掉,SVN不会对它进行任何管理。

 

  红色的叉:该文件在SVN上最新版中不存在了。我们需要UPDATE才能把本地的文件删除掉。

  黄色的锁:表示当前文件被锁了,别人就不能修改了。

  1. SVN使用的注意事项

8.1.  要求:

   先更新,再提交

8.2.  不更新,直接修改,直接提交

 

 

8.3.  结果一--自动合并:

可能没有同时修改同一行

 

 

8.4.  结果而--冲突,需要手动解决:

同时修改同一个文件的同一行

 

 

8.5.  解决冲突的3种方式:

8.5.1.   强制替换成自己的!!

 

 

8.5.2.   强制使用别人!!

自己本来没改,但是被svn服务器认为修改了

 

 

8.5.3.   建议使用:自己编辑冲突:两个都要保留,必须自己选择合并!!

 

 

 

自己修改代码,根据需要去包含it1的代码和it2(自己)的代码

修改完成之后

点击文件,右键,

 

把冲突问题已经解决了,提交

 

 

8.6.  忽略

 

  1. 清除保存的svn密码

删除C:UsersadminAppDataRoamingSubversion

  1. CRM仓库搭建

10.1.         引入

现在我们已经学习可以服务端搭建和客户端TortoiseSVN使用,我们可以尝试搭建CRM的仓库。

10.2.         步骤

1)创建仓库

2)分配权限

3)下载仓库

4)trunk上传代码---注意事项  组长完成

----------------------------------------------

5)把账号发给开发者

6)开发者checkout代码

7)导入eclipse开发

8)TortoiseSVN-更新,添加、提交的等操作。

10.3.         注意

上面的步骤完成之后,才进行后续操作,由组长完成

特殊文件处理:

配置文件jdbc.properties,数据库访问密码

个人不要提交,如有新改动由项目经理提交

jdk版本项目目录下面.classpath.project.settings

会出现lib找不到等错误,这种问题要会解决。解决后不要提交,不要更新

编译文件classes

        排除不受SVN管理

总之选择性更新。

组员第一次不从svn里面下载代码

由组长把刚才忽略掉以上文件的crm代码打包给组员

组员自己修改数据库密码,eclipse配置(server runtime,jdk)

  1. SVN客户端-Eclipse SVN插件使用

11.1.         引入

前面我们已经搭建了CRM的仓库,并且可以使用TortoiseSVN来管理代码了。但是我们一般开发代码在eclipse开发,但是提交代码要使用TortoiseSVN。要切换两个工具。比较麻烦,是否可以在Eclipse直接操作呢?可以这要使用Eclipse svn插件

11.2.         安装

11.2.1. 下载插件包

使用新版本

11.2.2. 安装

解压缩插件包到eclipse的dropins下面就可以

D:eclipsedropinssite-xxx

11.2.3. 确认安装结果

重启eclipse

 

原文地址:https://www.cnblogs.com/Src-z/p/11218836.html