深入浅出剖析SVN、SVN服务端客户端下载

1.0 SVN、SVN服务端客户端下载

1.1 项目管理中的版本控制问题

  • 通常软件开发由多人协作开发,如果对代码文件、配置文件、文档等没有版本控制,将会出现很多问题:
  1. 备份多个版本,占用磁盘空间大。
  2. 解决代码冲突困难。
  3. 容易引发bug
  4. 难以追溯问题代码的修改人和修改时间
  5. 难以恢复至以前正确的版本
  6. 无法进行权限控制
  7. 项目版本发布困难

1.2 SVN介绍

  •  SVN是SubVersion的简称,是一个自由开源的版本控制软件。
  • Subversion将文件存放在中心版本库里,这个版本库很像一个普通的文件服务器,不同的是,它可以记录每一次文件和目录的修改情况,这样可以借此将数据恢复到以前的版本,并可以查看数据的更改细节。早期版本控制使用的是CVS,后来SVN替代了CVS,随着Android兴起,出现Git版本控制工具。

1.3 SVN使用流程

 

  •  问题:怎么让系统允许用户共享信息,而不会让他们因为意外而互相干扰
  • 复制-修改-合并方案(Subversion默认的模式)在这种模型里,每一个客户读取项目配置库建立一个私有工作副本--版本库中文件和目录的本地映射。用户并行工作,修改各自的工作副本,最终,各个私有的复制合并在一起,成为最终的 版本,这种系统通常可以辅助合并操作,但是最终要靠人工去确定正误。
  • 锁定 -修改-解锁方案  在这样的模型里,在一个时间段里配置库的一个文件只允许被一个人修改。此模式不适合软件开发这种工作。

1.4 SVN 使用

1.4.1安装VisualSVN服务端

(1)双击安装

VisualSVN-Server-3.5.6-x64.msi

(2)安装与创建仓库

(3)启动SVN服务器

 1.4.2 创建仓库

(1)右键

(2)下一步

(3)下一步

(4)下一步

  •  在visualSVN中创建仓库时,可以选择SVN目录结构
  1. Trunk:主干目录,此目录的文件为基准文件;平时开发的代码上传到此目录。
  2. Branches:用于开发的分支目录;对主干目录的一些个性化的扩展代码提交到分支目录。举例:一个系统主要功能有项目管理模块、财务模块;其它的客户要求在:项目管理、财务管理的基础上再添加一个KPI考核功能,此时就可以创建一个独立的分支。
  3. Tags:用于发布的版本目录,提交到tags目录的代码是一个稳定的版本

(5) 最后


1.4.3 创建用户、分配权限

(1)右键

(2)输入用户密码

(3)配置用户可以访问哪个仓库

 

(4)最后,获取服务器的访问地址

https://DESKTOP-PS8I3T1/svn/tiger/trunk


2.1 .1安装TortoiseSVN客户端

(1)TortoiseSVN是一个基于Windows系统的SVN客户端 图形化界面。

(2)双击安装:TortoiseSVN-1.9.4.27285-x64-svn-1.9.4.msi

(3)安装后:鼠标右键

 2.1.2 浏览仓库

(1)点击Repo-browser,输入仓库地址,就可以浏览仓库。

 

最后:(这里为空,因为还没有上传,仓库内容为空) 

 

早在2000年,CollabNet, Inc.就开始召集开发人员开发CVS的替代品。CollabNet 提供一套名为SourceCast协同工作套件,其中的一部分组件是版本控制。虽然SourceCast使用CVS作为其最初的版本控制系统,但是CVS的种种限制从一开始就处处可见,最后CollabNet明白必须要找到一个更好的解决方案。不幸的是,至少在免费license中,因为没有更好的选择,CVS已经广泛成为了开源世界中事实上的标准。所以CollabNet决定开发一个新的版本控制系统,保留CVS的基本特性但去除CVS的bug和不好的特性。   在2000年2月,他们联系《使用CVS开发开源项目》(Open Source Development with CVS)(Coriolis, 1999)的作者Karl Fogel,并征求了他是否愿意在这个新的项目中担任一个角色。巧合的是,当时Karl已经和他的朋友Jim Blandy讨论了一个关于新的版本控制系统的设计。在1995年,这两人就成立了Cyclic Software,一个提供CVS的商业支持的软件公司。虽然他们经营商业服务,但是仍然在每天都在工作中使用CVS。使用CVS的挫折感使得Jim认真思考更好的方法来管理数据,不但确定名字为“Subversion”,而且完成了Subversion档案库的基础设计。   当CollabNet的电话到来时,Karl立即答应了加入项目中,而且Jim让他的雇主RedHat Software同意让他在这个项目中不定期工作。CollabNet雇用了Karl和Ben Collins-Sussman,并在5月开始了详细设计工作。在得到了来自CollabNet的Brian Behlendorf、Jason Robbins和Greg Stein(当时是一名活跃在WebDAV/DeltaV规范过程的自由程序员)很多创意的帮助下,Subversion很快地引起了一个活跃开发者社区的注意。它找出并欢迎很多同样在CVS上受到挫折的社员能来为这个项目做点什么。   Subversion 最初的设计Team定下了几个简单的目标。 它必须在功能上可取代 CVS,也就是说, 所有 CVS 可做到的事, 它都要能够作到。 在修正最明显的瑕疵的同时, 还要保留相同的开发模式。 还有, Subversion 应该要和 CVS 很相像, 任何 CVS 使用者只要花费少许的力气, 就可以很快地上手。   经过十四个月的编码后, Subversion 于2001年8月31日开始实现 “自行管理”。 也就是说, 开发人员不再使用 CVS 来管理 Subversion 的代码, 而以 Subversion 自己来管理。   从启动这个项目到现在,虽然CollabNet提供了大部分的资金(它付出几位全职 Subversion 开发人员的薪水), 但这还是个开源项目, 由一组松散透明的规则所约定。 CollabNet 拥有代码的版权完全符合 Debian Free Software Guidelines。 换句话说, 每个人都可以随意地免费下载、修改、以及重新发布 Subversion; 完全不需要经过 CollabNet, 或是任何人的允许。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hyhcloud

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值