1. SVN概述
SVN(subversion),是一个自由开源的版本控制系统(版本控制工具).
Checkout:把整个项目源码下载到本地.
Update:将本地的源码更新至服务器上的最新版本.
Commit:将本地的源码更新内容至服务器.
2. SVN使用
SubVersion官网:http://subversion.apache.org/
2.1 服务器端VisualSVN-Server安装与使用
2.1.1 VisualSVN-Server下载
2.1.2 VisualSVN-Server安装
直接下一步
2.1.3 VisualSVN-Server启动
2.1.4 VisualSVN-Server创建仓库
2.1.5 VisualSVN-Server权限控制
创建用户
创建组
分配权限
2.2 客户端TortoiseSVN安装与使用
TortoiseSVN是一个基于Windows系统的svn客户端图形化界面。
2.2.1 TortoiseSVN的下载
2.2.2 TortoiseSVN的安装
安装后需重启电脑(下一步,下一步即可)。
2.2.3 TortoiseSVN的常用操作
<1>浏览仓库
我们可以清空svn客户端的缓存
<2> checkout
代表第一次去从svn服务器down东西.
<3> add
表示将文件添加到本地仓库.
<4> commit
将本地仓库的文件提交到svn服务器.
<5> update
它是更新操作,可以将svn服务器上的内容更新到本地.
<6> 更新到历史版本
查看当前日志
也可以通过下面的方法切换版本
<7>delete
标记删除操作,本地文件会删除,我们需要提交(commit),才能真正的从服务器删除.
<8>导入与导出
Import将本地资源导入到svn服务器.
Export导出项目,和checkout的区别,它不存在.svn隐藏文件.
<9>冲突问题与解决
多个用户操作同一个文件就会造成冲突的情况.
解决冲突:
在发生冲突的文件上首先进行update更新.
解决完冲突之后再进行提交
2.3 IDEA下SVN配置与使用
2.3.1 IDEA下SVN配置
注意:如果没有svn.exe文件,可做如下操作:
再次双击运行安装程序.
显示以上四个图标表示配置完成.
第一个图标:Update Project更新项目
第二个图标:Commit changes提交项目上所有变化文件.
第三个图标:Show history显示当前文件的历史记录.
第四个图标:Revert还原当前被修改的文件到违背修改的版本的状态下.
Local Changes本地修改过的文件都会出现在这里.
Repository svn仓库提交的所有记录
Incoming本地还没有更新的别人提交的代码.
2.3.2 IDEA下SVN使用
2.3.2.1 share project
将一个工程分享到svn服务器端.
仓库里面就有项目了.
2.3.2.2 checkout
将项目从svn仓库剪切到IDEA中
2.3.2.3 ignore
忽略上传的文件
2.3.2.4 解决冲突
如果别的人修改文件进行提交,版本发生变化如果没有更新再进行提交会发生错误.
commit发生错误,然后再update弹出窗口:
修改冲突之后再进行提交
3 SVN规范
3.1 SVN目录规范
在visualSVN创建仓库的时候,可以选择SVN目录结构.
branches用于开发的分支目录.
tags用于发布的版本目录
trunk主干目录,此目录下的文件为基准文件.
3.2 分支与标记
3.2.1 分支或标记规范
branches(分支)的命名规则:Project name+日期时间+功能点
tags的定义规则:Project name+版本号,版本号定义为三段数字编号xxx.xxx.xxx
* 第一个:革命性的产品升级版
* 第二个:新功能版
* 第三个:修正bug
3.2.2 打分支或标记
share之后进行commit提交.
首先将主干上的项目checkout下来:
3.3 主干合并到分支
先将分支checkout下来,然后在分支这面操作
分支合并到主干同理,只不过是在主干这面操作.