linux下svn环境搭建(一)

2017-12-07  本文已影响0人  面朝大海_1234

前言:

cvs svn  git三者区别

1、cvs每次提交代码时,假设出现异常时导致中断,那么就会存在有一部分代码被提交了,有一部分没提交,svn要么全部成功,要么全部失败,原子性更强。

2、cvs设计的初衷就是为了存储文本文件的,所以在其他类型文件例如图片,文档文件等会不是很支持或者说是上传时效率慢。

3、cvs创建分支的时候,当项目越大,创建消耗的资源是成正比的,而svn会快很多。

4、git在合并分支的时候可以非常简单和方便,不会像SVN一样当有多个分支时,必须到每个一个分支的目录上merge。

5、git是基于分布式的,这样对于管理大型的项目系统时它的性能会比svn高。

分布式举例:假设一个盒子里面有10个乒乓球,每个乒乓球上有一个编号,1-10,假设现在你要找9号乒乓球,那么你就得一个个翻,如果你用五个盒子去装,

你把9和10号球放在了5号盒子里面,那么此时你去找9号球时,就直接到5号盒子里面找,定位准确,效率高。

1、安装svn环境

 出现如下信息安装成功

2、创建仓库

首先创建文件夹

mkdir -p /svn/repos

然后创建仓库

svnadmin create /svn/repos/

3、修改配置文件

    首先修改svnserve.conf,将下面几处配置打开

    然后新增用户

然后将用户分组,且进行目录权限控制

所以此时wangjing、sunjie两个人分在test01组中,且01组对主干(trunk)和标记(tags)下面的所有目录都有读写权限

而组test02只能访问cesi目录下的内容

启动svn:

svnserve -d -r /svn/repos/

4、主干分支管理

 在svn中会有主干分支的概念,我们公司主干上是不开发代码的,但是其他很多公司主干上也开发代码,分支就是线上版本,具体怎么去用根据公司自身情况来吧,主干提供分支给下个版本进行开发,例如现在APP刚上线版本为1.0,此时就应该有两个分支为1.0和1.1,分支是从主干上通过svn客户端操作出来的,如下:

点击后出现如下,选择你要去分支到哪里目录,一般都是在branchs目录下面,

这样,我们建立分支1.0(线上环境维护和修改小bug)和1.1(下个版本新功能开发)后,在我们开发环境中就根据自身需求去down不同版本进行开发。

分支合并到主干

注意:每天下班前需要将分支上开发的代码合并到主干上,因为主干上后续不进行开发,合并分支1.0和1.1的代码的目的就是为了后期从主干可以直接分一个1.2出来,这样可以保证代码是最新的,我们必须在主干上选择合并,如下

选择merge选择,根据默认提示下一步,如下

出现此界面是,注意两点

1、上面图中地址必须是分支的地址,因为你是想把分支上的内容拿到主干中

2、最好去通过点击show log去选中对应你每天提交的记录,

选中你自己提交的记录,然后点击确定后进行合并操作。

上一篇下一篇

猜你喜欢

热点阅读