SVN、git、github-版本控制服务器

本文介绍了SVN和Git两种版本控制系统,包括它们的特点、用途和常见客户端工具。重点讲述了SVN的运行方式、端口、工作流程和Apache结合的配置,以及Git的工作原理和优势。此外,还提供了Git服务器的搭建步骤。
摘要由CSDN通过智能技术生成

简述SVN版本控制服务

版本控制服务器运维使用较少 在互联网公司用较多 搭建完交给开发
帐号密码给开发 开发用 传代码 传版本号

svn git 常用 开源
github全世界开源代码存放平台 (微软收购)
国内 码云
大部分代码可拿来商用

目前大公司用git&gitlab较多

搭建完开发用客户端连接

gitlab是git高级版 基于图形化管理

svn&git windows客户端管理工具 (TortoiseSVN&TortoiseGit) 需单独下载git程序


SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion,也就是CVS的接班人!
CVS是一个C/S系统,是一个常用的代码版本控制软件。主要在开源软件管理中使用。与它相类似的代码版本控制软件有subversion。多个开发人员通过一个中心版本控制系统来记录文件版本,从而达到保证文件同步的目的。CVS版本控制系统是一种GNU软件包,主要用于在多人开发环境下的源码的维护。但是由于之前CVS编码的问题,现在大多数软件开发公司都使用SVN替代了CVS。

官方网站:http://subversion.apache.org/
Windows客户端 TortoiseSVN:http://tortoisesvn.net/

常见的版本控制软件
CVS,逐渐被SVN取代,是CVX重写版和改写版
SVN,Subversion
Git,Git是一个开源的分布式版本控制系统,用以有效、高速的处理,管理从很小到非常大的项目版本。Git 是 Linus Torvalds (林纳斯·托瓦兹)为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件

GitLab版本管理
GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。

SVN存储数据的方式
BDB,Berkeley DB,一种事务安全型表类型
FSFS,“FSFS” 采用文件系统的方式, 替代原来的基于Berkeley DB的实现。
因为BDB方式在服务器中断时,有可能锁住数据,所以还是FSFS方式更安全一点。
SVN的运行方式及端口
独立服务器 3690端口 访问方式SVN:// C/S模式
借助apache运行 80端口 访问方式 http://

工作流程
集中式代码管理的核心是服务器,所有开发者在开始新一天的工作之前必须从服务器获取代码,然后开发,最后解决冲突,提交。所有的版本信息都放在服务器上。如果脱离了服务器,开发者基本上可以说是无法工作的。下面举例说明:
开始新一天的工作

  1. 从服务器下载项目组最新代码。
  2. 进入自己的分支,进行工作,每隔一个小时向服务器自己的分支提交一次代码
    (很多人都有这个习惯。因为有时候自己对代码改来改去,最后又想还原到前一个小时的版本,或者看看前一个小时自己修改了哪些代码,就需要这样做了)。
    下班时间快到了:
    把自己的分支合并到服务器主分支上,一天的工作完成,并反映给服务器。
    这就是经典的svn工作流程.

SVN+Apache运行原理
SVN搭配Apache的时候,Apache需要使用mod_dav_svn这个模块,他的运行机制如下:
在这里插入图片描述

在一台服务器上建立一个源代码库,库里可以存放许多不同项目的源程序。有源代码库管理员统一管理这些源程序。
每个用户在使用源代码库之前,首先要把源代码库里的项目文件下载到本地,然后开发人员可以在本地修改,然后用svn命令进行提交,由源代码库统一管理修改。
mod_dav_svn 可以让版本库通过http协议实现网站展现

安装SVN

[root@localhost ~]# yum -y install httpd subversion mod_dav_svn

svn端口

[root@localhost ~]# cat /etc/services |grep svn
svn             3690/tcp                        # Subversion
svn             3690/udp                        # Subversion
svnetworks      2973/tcp                # SV Networks
svnetworks      2973/udp                # SV Networks
svnet
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值