SVN

SVN

1.1 版本控制

1.1.1 什么版本控制

版本控制(Revision Control):是维护工程蓝图的标准做法,能追踪工程蓝图从诞生一直到定案的过程。是一种记录若干文件内容变化,以便将来查阅特定版本修订情况的系统。也是一种软体工程技巧,籍以在开发的过程中,确保由不同人所编辑的同一档案都得到更新。

 

1.1.2 版本控制软件

l CVSConcurrent Versions System)代表协作版本系统或者并发版本系统,是一种版本控制系统,方便软件的开发和使用者协同工作。

l VSS Visual Source Safe )只能在windows,作为 Microsoft Visual Studio 的一名成员,它主要任务就是负责项目文件的管理

l Git是用于Linux内核开发的版本控制工具。它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。Git的速度很快,这对于诸如Linux kernel这样的大项目来说自然很重要。Git最为出色的是它的合并跟踪(merge tracing)能力。

www.github.org

 。。。。。。

l SVNSubversion ),是一个开放源代码的版本控制系统,采用了分支管理系统,它的设计目标就是取代CVS

 

1.2 SVN特点

l 统一的版本号。CVS是对每个文件顺序编排版本号,在某一时间各文件的版本号各不相同。而Subversion下,任何一次提交都会对所有文件增加到同一个新版本号,即使是提交并不涉及的文件。所以,各文件在某任意时间的版本号是相同的。版本号相同的文件构成软件的一个版本。

l 原子提交。一次提交不管是单个还是多个文件,都是作为一个整体提交的。在这当中发生的意外例如传输中断,不会引起数据库的不完整和数据损坏。

l 重命名、复制、删除文件等动作都保存在版本历史记录当中。

l 对于二进制文件,使用了节省空间的保存方法。(简单的理解,就是只保存和上一版本不同之处)

l 目录也有版本历史。整个目录树可以被移动或者复制,操作很简单,而且能够保留全部版本记录。

l 分支的开销非常小。

l 优化过的数据库访问,使得一些操作不必访问数据库就可以做到。这样减少了很多不必要的和数据库主机之间的网络流量。

l 支持元数据(Metadata)管理。每个目录或文件都可以定义属性(Property),它是一些隐藏的键值对,用户可以自定义属性内容,而且属性和文件内容一样在版本控制范围内。

l 支持FSFSBerkeley DB两种资料库格式。

l 不足:只能设置目录的访问权限,无法设置单个文件的访问权限。

 

 

1.3 体系结构

 

 

1.4 安装

 

 

测试安装

检查path系统环境变量

 

 

1.5 创建仓库

格式:cmd>  svnadmin create 路径

 

 

仓库目录结构

注意:创建仓库时,目录必须是空的 ,及新建文件夹

 

1.6 启动

格式cmd>  svnserve  -d  -r  仓库的路径

-d后台执行

-r版本库的根目录

 

启动时,指定“仓库路径”不同,分类:多仓库和单仓库

 

多仓库【掌握】

启动:svnserve -d -r 仓库父目录  ,表示启动时多仓库

例如:svnserve -d -r G:\repository\svn

访问:svn://localhost:3690/bbs

单仓库

启动:svnserve -d -r 仓库的根  ,表示启动时单仓库

例如:svnserve -d -r G:\repository\svn\bbs

访问:svn://localhost:3690

 

将操作注册成操作系统的“服务”,开机启动。

1.“运行”,services.msc 打开“服务”

2. 删除“服务”

3. 注册“服务”

sc create svn binpath= "D:\java\Subversion\bin\svnserve.exe --service -r G:\repository\svn" displayname= "SVN-Service" start= auto depend= Tcpip

4. 启动或停止“服务”

 

1.7 操作【掌握 思想】

 

 

1.7.1 checkout

格式:svn  checkout  服务器地址  下载地址

 

1.7.2 commit

格式:svn commit  资源

 

问题1:没有纳入版本控制

使用add子命令 添加到本地版本库

问题2:没有编写日志

采用 -m  参数设置日志信息

问题3:没有权限

修改权限,设置匿名访问

G:\repository\svn\bbs\conf\svnserve.conf

 

1.7.3 update

格式: svn update

 

 

 

 

1.8 图形化:TortoiseSVN 安装

 

安装成功之后,所有的操作都是“右键”

 

1.9 svn权限

权限需要3个配置文件

l svnserve.conf

开启认证

确定账号配置文件位置

确定认证配置文件位置

l passwd  账号配置 (一行一个账号,账号用户名和密码组成,使用等号分隔)

l authz 认证配置文件

配置组 格式:组名 = 用户1 ,用户2....

认证细节配置

多仓库

[bbs:/]   --> 确定仓库名称 。[bbs:/doc]  bbs仓库的doc目录配置权限

@itheima = rw --> itheima组设置权限。

read ('r') read-write ('rw') or no access ('').

user3 = r --> user3 指定权限

*= --> 其他用户没有权限

单仓库

[/] -->当仓库的根  [/doc]  单仓库doc目录

 

1.10 TortoiseSVN 常见图标

 

 

1.11 myeclipse svn 插件

1.11.1 安装插件

 

如果3个都不能使用,直接换eclipse

 

安装方式1:直接复制

eclipse插件规范

eclipse 目录

| -- features目录

| -- plugins 目录

方式2:使用link文件

将插件解压到任意目录(不含中文、空格),在myeclipse/dropins目录添加一个link文件

文件名:自定义

文件扩展名:link

文件内容:

path = 插件完整目录,需要指定到eclipse,及可以看到(features plugins

例如:

path=D:\\java\\MyEclipse\\MyEclipse 10\\svn\\eclipse

path=D:/java/MyEclipse/MyEclipse 10/svn/eclipse

方式3:在线安装

 

安装成功标志

 

1.11.2 操作

 

 

 

 

 

1.12 svn目录规范

 

 

 

 

trunk  ,主线,用于存放程序整个进度

branches ,分支,例如:bug修复、特殊功能等

tags,标签(版本),此目录下的内容不能修改

 

转载于:https://www.cnblogs.com/burningmyself/p/7308198.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值