SVN_SVN的基本认识
SVN是什么?
svn是Subversion的简称,是一个开源的代码版本控制系统,svn就是用于多人共同开发同一个项目,达到资源共用目的工具。
版本控制是什么?
版本控制(Revision control)是指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理。可记录每个版本的信息,方便问题追踪。同时版本控制还支持并行开发,可有效的提高开发效率
为什么要使用SVN?
1、项目备份方便,节省硬盘空间;
2、记录每个版本,方便追溯历史纪录。
3、多人协作开发,共享数据;
4、细节化的权限控制,便于管理员掌控项目整体
SVN基本操作认识:
1、 svn工作流程和架构图;
a) svn工作方式:
b) svn架构图:
2、 svn服务器、客户端的获取与安装:
a) 服务端:https://www.visualsvn.com/server/download/
b) 客户端:https://tortoisesvn.net/downloads.html
服务端默认端口号443或8443,安装完成后可以在C:\Program Files\VisualSVN Server\bin目录中找到VisualSVN Server.msc服务端图形化应用窗口程序
客户端TortoiseSVN-1.10.2.28392-x64-svn-1.10.3默认安装完成后,在文件夹中单击右键出现SVN Checkout...或TortoiseSVN后表示安装成功!【没有的话重启】
3、 svn服务器目录结构、用户和权限;
a) 目录结构:
i.Repositories 仓库:存放被svn管理的项目文件,可以存放源码,文档等;
ii. Users 用户:创建和编辑用户;
iii. Groups 权限组:创建和编辑用户组;
b) 创建仓库:
标准文件夹结构:
1)branches 分支:如果需要测试新技术,或者大范围修改,将主干代码拷贝到分支中进行,测试无误后可以合并到主干中
2)tags 发布:发布版本要放到tags中;
3)trunk 主干:主要开发目录;
c)创建用户:每个开发人员都需要拥有自己的svn账号;
d)创建组:为每个部门配置不同的权限,便于管理;
e)分配权限:在仓库或者目录中为用户/组分配权限;
4、svn常用操作:
a)checkout 检出:初次下载 - 第一次连接svn服务器时候需要下载对应仓库的数据(如果仓库中有数据的话);
b)add 新增:新增数据到svn服务器;
c)update 更新:更新数据 - 检查svn服务器中的数据是否与本地的数据一致,如果不一致就下载改变/新增部分,同时不会删除本地数据;
d)delete 删除:删除svn的数据(需要搭配commit命令);
e)revert 回滚:将指定版本的代码回滚到本地,如要提交到服务器需要搭配commit命令;
f)代码冲突: 在多人同时开发一个类,提交的时候容易出现代码冲突,也可以理解为版本冲突;
g)其他操作:
i.下载指定版本号的文件;
ii.代码对比工具;
iii.账号保存与注销;
iv.按照版本检出;