SVN
1.SVN概述
1.为什么需要svn版本控制软件
2.解决之道
SCM:软件配置管理
所谓的软件控制管理就是对软件源代码进行控制与管理
CVS:元老级产品
VSS:入门级产品
SVN:主流产品
3.什么是SVN
- SVN:全称SubVersion
- SVN是近几年来崛起的版本管理软件,是CVS的接班人。
特点:
- 操作简单,入门容易
- 支持跨平台操作
- 支持版本回退功能
4.获取SVN软件
属于C/S结构软件(客户端、服务端)
服务端软件:VisualSVN
客户端软件:Tortoisesvn
2.SVN安装
2.服务端安装
服务端软件存储于软件/服务器端
SVN的服务器的安装和配置工作
-
安装按照教程一步步的安装即可 SVN安装教程 注意:安装的时候,不要出现中文、特殊符号即可。
-
配置工作:
- 先在svn目录下建立一个WebApp文件夹
- 在WebApp文件下简历Shop。目前还只是文件夹,还需要和svn产生联系
- 在DOS命令行下输入 svnadmin create Shop 文件夹,如果配置成功,那么shop应该多了6个文件
-
服务器监管:
-
SVN— svn://localhost: 访问相关的数据仓库(如shop)
-
svnserve -d -r D:/svn/WebApp/Shop
-
Apache— http://localhost:8080 访问htdocs目录
-
-
SVN的权限的配置文件都在conf中
打开svnserver.conf ,找到 #anon-access = read (19行)anon-access = write##
3.SVN客户端的配置
- 傻瓜式安装,记得重启一下即可
- 还可以安装汉化包
- 配置完之后第一次牵手:
- checkout(检出)
- 打开隐藏功能如果能看到.svn这个文件夹就说明客户端和服务端连接起来了,检出成功;
4.SVN 使用的详解
- 三大指令
-
checkout 检出操作:
1.连接到SVN服务器
2.第一次链接的时候更新数据到本地,后面使用update(更新指令)
注意:Checkout只在第一次链接时操作一次,以后如果进行更新操作请使用update(更新指令)
-
(commit)提交操作:
- 本地操作后,提交本地数据到服务端
-
更新操作
右键更新操作即可自动更新到本地
5.图标集
- 常规就是服务器和客户端数据一致;
- 冲突图标:上传文件与服务器端数据有冲突
- 删除图标:当服务端数据已删除,那么客户端会显示
- 增加图标:当我们编写的文件已添加到提交队列,系统会显示
- 无版本控制,编写好的文件没有添加到上传队列;
- 修改图标:对客户端文件有改动但未提交
- 只读:客户端文件以只读文件存在
- 锁定:服务端数据已锁定
- 忽略:客户端文件已忽略,不需要文件上传
忽略功能
忽略功能就是自己不想分享到服务器,仅仅是给自己看的内容:
忽略某个指定文件
忽略某个类型文件
6.版本回退
1. 什么是版本回退
有些时候软件开发者对自己编写的代码不满意这时我们需要把当前版本回退到上一个版本
2. 版本回退功能
1.在项目处右键
根据日志回退
根据版本号回退
根据日志进行版本回退
根据日志信息,选择要回退的版本
7.版本冲突
1.什么是版本冲突
在实际项目开发中,如果两个人同时修改某个文件就会产生版本冲突问题
通过SVN解决版本冲突问题
1.更新服务器端代码到本地
2.冲突文件解读
index.php文件:整合后的文件
index.php.mine:自己的改动
index.php.r6:起始文件
index.php.r7:别人修改的文件
3.解决
1.删除除了index.php以外的文件
2.修改整合index.php的冲突文件
3.解决冲突后提交