版本控制svn

Subversion Training


Subver有推翻、颠覆的意思,有暴力的倾向。Subver开发就是为了推翻一个软件产品,就是为了推翻CVS版本控制器。


快速了解掌握Subersion


第一讲   概述和安装


Chapter 1
SVN Overview and Installation




一、常见的工作情况

嗨,兄弟能不能把上周二改变的文件发过拷贝给我?

兄弟这个函数不能用了,你是不是改了什么东西?

我找不到底层的类了,我想你是不是将底层的类实现了。

兄弟们,上周大家都很辛苦,我们现在将大家的代码都合在一块。

为了解决上面的问题


二、什么是Subversion?

SVN是一个版本控制器,在2000年的时候由CollabNet公司开发。主要是为了维护文件
的当前版本和历史的版本,它的目标就是为了取代CVS.


SVN被越来越多的开源软件项目所有使用,如:Apache GCC FreeBSD Python PHP等等


SVN是开源的


三、What is Version Control?  什么是版本控制器
文件每次更改都是一个状态,这个状态就是一个版本。
它是用来变更文件系统的变更的。你所谓的改变通常使用一个编号标记,这个叫版本号
每一个版本都和一个时间撮和一个作者关联
一个文件可用用不同的版本进行比较,查看他们的差异,可以被恢复、合并、冲突怎么解决


四、SVN体系
Subversion Architecture 


五、Subversion's Components  SVN有那些组件
1 svn 最重要客户端命令行工具,推行,可以嵌套在代码中自动化编程
2 svnversion
3 svnlook
4 svnadmin  后端管理工具
5 mod_dav_svn apache SVN插件
6 svnserve 独立的进程
7 svndumpfilter
8 svnsync


六、The Repository 数据仓库
集中存放信息的地方


SVN是一个集中式的系统,通过集中式访问信息,它的核心就是Repository


SVN怎么存储信息呢?其实就是将文件存储在系统的目录树下,从物理结构下创建的虚拟的文件系统


客户端通过连接服务器,读取或者修改文件。当一个客户端更改其他客户断就可以看见修改


Repository和一般的文件系统有什么不同之处,Repository有一个记忆的功能,递增存储,记录
文件的修改和目录的修改,与Git相反


客户端从服务器读取时,默认是最后版本,也可以提取历史版本。




七、版本控制器需要解决的问题。
文件共享存在的问题?  The Problem of File Sharing
所有的版本控制系统主要是为了协同工作
1、The Lock-Modify-Unlock Solution L-M-U
锁带来管理问题,锁了就不能读
不能读

2、The Copy-Modify-Merge Solution C-M-M
创建一个本地副本
独立的做独立的修改
在最后将所有的拷贝合并在一起
系统将文件合并在起不是所有都可以自动,有冲突的就必须人为沟通


八、Repository URLs
你可以通过几种方法访问数据,通过网络地址访问
file:///
http:// apache
https:// SSL加密
svn:// 
一般常用的是http和https,他们有个主要的优点是跨越防火墙


九、安装 理论联系实际才能更深入学习(使用源码安装)
主要讲解服务器的安装


下载三个源码包
subversion 1.6.5.tar.gz
subversion deps 1.6.5.tar.gz
httpd-2.4.9.tar.gz


解压上面三个包


cd subversion
vim INSTALL


动手安装
首先安装apache
cd apache
./configure --enable-dav --enable-so --prefix=/opt/www
make && make install
成功编译好sub,在apache文件中的module就有sub


安装subversion
./configure --with-apxs=/opt/www/bin/apxs --prefixe=/opt/svn
make && make install



第十章 配置
LoadModule dav_svn_module   modules/mod_dav.so  // 前提是没有加入with-dav
LoadModule dav_svn_modeule  modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so


访问某些特定的网址时候,就访问SVN


1\配置 Repository
创建一个Repository
svnadmin create repos


2\配置访问
修改http.conf
<Location /repos>
DAV svn
SVNPath /opt/repos
</Location>


3 httpd.conf  User  Group,

 将/repos  chmod 700 /repos  

chown -R pth.pth /repos


svn import mysrc -m "Init" http://.... 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值