1、使用版本控制工具的原因
- 及时了解团队中其他成员的进度
- 轻松比较不同版本间的细微差别
- 记录每个文件成长的每步细节,利于成功的服用
- 资料共享,避免以往拷贝文件造成的版本混乱;
- 人人为我,我为人人,所有成员维护的实际是同一个版本库,无需专人维护所有文件的最新版本,
- 系统工作,大大提高团队工作效率,无论团队成员分布在天涯海角
2、基本概念
2.1配置库:
SVN核心是配置库,储存所有的数据,配置库按照文件树形式储存数据——包括文件和目录,任意数量的客户端可以连接到配置库,读写这些文件。通过写数据,别人可以看到这些信息;通过读数据,可以看到别人的修改。
最特别的是SubVersion会记录配置库中的每一次更改,不仅针对文件,也包括目录本身,包括增加,删除和更新组织文件和目录。
2.2工作副本
与位于中央配置库相对应的是每个人的工作空间,它是每个成员员工作的地方,程序员从配置库拿到源代码,放在本地作为工作副本,在工作副本上进行查看,修改,编译,运行,测试等操作,并把新版本的代码从这里提交回配置库。
3、SVN安装(客户端/服务器端)
下载地址:http://subversion.apache.org/packages.html
4、SVN的工作模式
复制——修改——合并方案(SVN默认的模式)
这种模型里,每个酷虎读取项目配置库简历一个私有工作副本——版本库中文件和目录的本地映射。用户并行工作,修改各自的工作副本,最终,各个私有的复制合并在一起成为最终的版本,这种系统通常可以辅助合并操作,但是最终要靠人工确定正误。
锁定——修改——解锁方案
在这样的模型里,在一个时间段里配置库的一个文件只允许被一个人修改,此模式不适合软件开发这种工作。
5、SVN使用图标说明
正常安装,但使用过程中没有图标,参考:SVN安装后文件图标不显示问题解决
6、服务器相关操作
打开服务器管理器
6.1 创建配置库
右击
新建后,弹出配置库创建向导,其中根据自己需要选择标准库还是分布式配置库
6.2创建用户(users)
右击
6.3创建分组
右击
6.4设置权限
6.5获取数据库地址
7、客户端基本操作
7.1关联服务器(CheckOut)
作用将版本库中的内容检出到本地工作副本
- 新建一个文件夹——用于存放代码文件;(本地库)
- 打开新建的文件夹
- 右击——选择Check Out
- URL填写服务器数据库地址,Check Out 就是当体库的路径
- 输入用户名和密码:
7.2 取消关联服务器
勾选图示位置的隐藏的项目
打开需要取消关联的文件夹
删除图示位置的文件夹,等待1分钟作用,刷新验证已经取消了关联
计划加入版本控制库(Add)——只是加入本地库
- 右击需要添加的版本,
- 此时文件带有一个+号
Commit(提交)——提交到配置库
- 在本地库内右击,选择SVN Commit
- 填写修改说明
- 选择需要添加的文件
- 点击ok,正常提交后文件前显示对勾
Update
作用: 更新工作副本使其成为版本库中最新版本,SVN将显示更新的文件和更新的次数。即在你修改某代码时,为确保是在版本库中最新版本的基础上进行修改的,所以先对你本地库中的版本进行更新
步骤
- 在本地库右击,
- 选择SVNUpdate
撤销修改()
当你修改文件后提交,发生冲突时,你可能需要将文件恢复到你修改前的状态:
- 右击发生冲突问题的文件夹,选择TortoiseSVN——Revert
- 右击——SvnUpdate
修改文件名称
- 右击需要修改名称的文件——TortoiseSVN——Rename
- 再次右击,SVN Update
浏览配置库文件
空白处右击
弹出会话框
可以直接通过拖拽的方式向会话框中添加问文件,也可以删除、复制等相关操作
删除
- 右击,——Tortoise SVG ——delete
- 返回到删除文件的上级目录,
- 右击删除文件的上级目录文件夹,
- 选择SVN Commit
查看修改记录(版本比较)
- 右击需要查看的文件——Tortoise SVN——Show log
- 弹出修改记录会话框
选择响应版本,并选择下面对应的文件双击
上锁
- 右击需要锁定的文件(上锁后,别人无法修改)——TortoiseSvn——Getlock
8、清理命令(clean up)的功能及使用技巧
参考网址:
软件测试之SVG版本控制工具
SVN服务器搭建和使用