没有合适的资源?快使用搜索试试~ 我知道了~
尚硅谷 Java 技术之 SVN1
需积分: 0 0 下载量 57 浏览量
2022-08-03
16:14:03
上传
评论
收藏 2.42MB PDF 举报
温馨提示
试读
58页
声明了一个方法,叫sum(),也随后保存到了文件服务器上,于是,count()方法就只存在于小刚的记忆中了。1.4 需求之四:多版本项目文件管理老许是一位项目经
资源详情
资源评论
资源推荐
JavaEE 课程系列
—————————————————————————————
更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
Java 课程系列之 SVN
尚硅谷 Java 研究院
版本:V1.0
第 1 章 开发中的实际问题
1.1
需求之一:备份
小明负责的模块就要完成了,就在即将 Release 之前的一瞬间,电脑突然蓝屏,硬盘光荣牺牲!几个
月来的努力付之东流。
1.2 需求之二:代码还原
这个项目中需要一个很复杂的功能,老王摸索了一个星期终于有眉目了,可是这被改得面目全非的代
码已经回不到从前了。什么地方能买到哆啦 A 梦的时光机啊?
1.3 需求之三:协同修改
小刚和小强先后从文件服务器上下载了同一个文件:Analysis.java。小刚在 Analysis.java 文件中的第
30 行声明了一个方法,叫 count(),先保存到了文件服务器上;小强在 Analysis.java 文件中的第 50 行
声明了一个方法,叫 sum(),也随后保存到了文件服务器上,于是,count()方法就只存在于小刚的记
忆中了。
1.4
需求之四:多版本项目文件管理
老许是一位项目经理,我会告诉你他把每一个版本都保存一份吗?我会告诉你这些工程里其实有很多
文件都是重复的吗?我会告诉你老许为这事删了很多电影吗?
JavaEE 课程系列
—————————————————————————————
更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
1.5
需求之五:追溯问题代码的编写人和编写时间
老王是另一位项目经理,每次因为项目进度挨骂之后,他都不知道该扣哪个程序员的工资!就拿这次
来说吧,有个该死的 Bug 调试了 30 多个小时才知道是因为相关属性没有在应用初始化时赋值!可是
二胖、王东、刘流和正经牛都不承认是自己干的!
1.6
需求之六:权限控制
小温这两天幸福的如同掉进了蜜罐里,因为他成功的得到了前台 MM 丽丽的芳心,可他郁闷的是这几
天总是收到 QA 小组的邮件,要求他修正程序中存在的 Bug,可他自己本地电脑上是没有这些 Bug 的,
“难道我的代码被哪个孙子给改了?”。是的,小温没来的时候,丽丽是 QA 小组小郑的女朋友啊!
第 2 章 版本控制简介
版本控制[Revision control],最初来源于工程设计领域,是维护工程蓝图的标准做法,能追踪工程蓝图
从诞生一直到定案的过程。是一种记录若干文件内容变化,以便将来查阅特定版本修订情况的系统。
Subversion 就是一款实现版本控制的工具软件,通常也称为版本控制器,简称 SVN。Subversion 是
Apache 软件基金会组织下的一个项目。
2.1 Subversion 的优良特性
①目录版本控制
CVS 只能追踪单个文件的历史,但是 Subversion 实现了一个“虚拟”文件系统,可以追踪整个目录树
的修改,文件和目录都是版本控制的,结果就是可以在客户端对文件和目录执行移动和复制命令。
②原子提交
提交要么完全进入版本库,要么一点都没有,这允许开发者以一个逻辑块提交修改。
③版本控制的元数据
每个文件和目录都有一组附加的“属性”,你可以发明和保存任意的键/值对,属性也会像文件内容一
样被纳入版本控制。
JavaEE 课程系列
—————————————————————————————
更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
④可选的网络层
Subversion 在版本库访问方面有一个抽象概念,利于人们去实现新的网络机制,Subversion 的“高级”
服务器是 Apache 网络服务器的一个模块,使用 HTTP 的变种协议 WebDAV/DeltaV 通讯,这给了
Subversion 在稳定性和交互性方面很大的好处,可以直接使用服务器的特性,例如认证、授权、传输
压缩和版本库浏览等等。也有一个轻型的,单独运行的 Subversion 服务器,这个服务器使用自己的
协议,可以轻松的用 SSH 封装。
⑤一致的数据处理
Subversion 使用二进制文件差异算法展现文件的区别,对于文本(人类可读)和二进制(人类不可读)文件
具备一致的操作方式,两种类型的文件都压缩存放在版本库中,差异在网络上双向传递。
⑥高效的分支和标签
分支与标签的代价不与工程的大小成比例,Subversion 建立分支与标签时只是复制项目,使用了一种
类似于硬链接的机制,因而这类操作通常只会花费很少并且相对固定的时间,以及很小的版本库空间。
SVN 的工作原理:采取客户端/服务器模式——在服务器的版本库中保存项目文件的各个版本,所有
参与协同开发的程序员在自己本地电脑上保存一个工作副本。SVN 支持程序员将本地副本更新到服务
器端的最新版本,也支持将本地副本的最新改变更新到服务器端,而且后面的更新不会覆盖前面的更
新,而是作为一个新的版本被保存下来——SVN 甚至支持将本地工作副本恢复为服务器端保存的某一
个历史版本。
JavaEE 课程系列
—————————————————————————————
更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
2.2 SVN
基本操作
①检出(checkout):将一个服务器端创建好的项目整个下载到本地,这是到项目组后参与开发的第
一步,只需执行一次。
②更新(update):将本地文件更新为服务器端的最新版本,通常为每天上班时或修改公共文件之前
执行一次。
③提交(commit):将本地修改提交到服务器端。通常每天下班前或每实现一个功能、完成一个模块
时执行一次。
第
3
章
Subversion
安装与配置
3.1 安装服务器端程序
①服务器端程序版本
目前 Subversion 的最新版本是 1.9.0-alpha2,这是一个测试版。官方网站推荐使用的版本是 1.8.9,
原话是:The best available version of Apache Subversion is: 1.8.9
②下载源码包
Apache 组 织自己 维 护 更 新 的 只 是 Subversion 的 源 码 , 各个 版 本 的 源 码 包 的 下载 地 址 是 :
http://subversion.apache.org/download/
Subversion 源码是使用 C 语言开发的。
③下载二进制安装包
Subversion 在不同平台下的二进制包是由不同组织构建实现的,Windows 平台下的二进制包实现
情况如下:
所以,服务器端程序的下载地址可以使用:
http://sourceforge.net/projects/win32svn/files/latest/download
JavaEE 课程系列
—————————————————————————————
更多 Java –大数据 –前端 –python 人工智能资料下载,可百度访问:尚硅谷官网
下载到的文件是:Setup-Subversion-1.8.14.msi
④双击运行 Setup-Subversion-1.8.14.msi
不整合 Apache 服务器可以忽略此选项
剩余57页未读,继续阅读
经年哲思
- 粉丝: 18
- 资源: 329
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0