============================================================================================================

 2:初始化进程

所有主机关闭防火墙

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# iptables -F
[root@localhost ~]# setenforce 0
[root@localhost ~]#

3:在111上部署SVN服务器

[root@localhost ~]# hostname svn
[root@localhost ~]# bash

[root@svn ~]# yum install subversion -y

[root@svn ~]# mkdir -p /application/svndata/crushlinux                     #svndata是放代码的,crushliunx是项目
[root@svn ~]# mkdir -p /application/svnpasswd                                 #svnpasswd用于存放用户名和密码,授权文件

创建yunjisuan项目主分支,开头分支,测试分支相当于三个项目

[root@svn ~]# svnadmin create /application/svndata/crushlinux/master                        #master主分支
[root@svn ~]# svnadmin create /application/svndata/crushlinux/dev                              #dev开发分支
[root@svn ~]# svnadmin create /application/svndata/crushlinux/test                               #测试分支
[root@svn ~]# cd /application/svndata/crushlinux/master/conf/
[root@svn conf]# cp svnserve.conf svnserve.conf-$(date +%F)

[root@svn conf]# vim svnserve.conf

19行         anon-access = none                                    #是否允许匿名用户访问
20行         auth-access = write                                   #授权通过的是否可以写
27行         password-db = /application/svnpasswd/passswd          #指定用户的密码文件
34行         authz-db = /application/svnpasswd/authz               #给指定用户分配权限

将配置文件覆盖另外两个分支

[root@svn conf]# ls
authz       passwd        svnserve.conf         svnserve.conf- svnserve.conf-2019-11-28

[root@svn conf]# cp authz passwd /application/svnpasswd/
[root@svn conf]# cd /application/svnpasswd/

[root@svn svnpasswd]# vim passwd

在【users】添加四个用户

manager=
dev=
tom=
bob=

[root@svn svnpasswd]# vim authz

在末尾添加如下内容

testgroup = tom,bob       #组是testgroup    成员是tom.bob

[crushlinux/master:/]        
 manager = rw                 #master主分支代码提交者-----开发经理
 dev = r                       #开发人员具有写权限

[crushlinux/dev:/]
 dev = rw                        #dev开发分支代码提交者----普通程序员
 manager = r                     #dev开发代码下载者-------开发经理

[crushlinux/test:/]
 @testgroup = r                 #test测试分支代码下载者------测试人员
 manager = rw                     #test测试分支代码提交者-----开发经理

[root@svn svnpasswd]# svnserve -d -r /application/svndata/                          #启动服务

[root@svn svnpasswd]# cd

[root@svn ~]# netstat -lnpt | grep 3690
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 60000/svnserve

[root@svn backup]# ps -ef | grep svn
root 11138 1 0 13:55 ? 00:00:00 svnserve -d -r /application/svndata/
root 21046 15876 0 15:12 pts/2 00:00:00 grep --color=auto svn

 在111svn服务器上安装依赖关系:

[root@svn ~]#yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel autoconf gcc gcc-c++ make -y

 编译安装:

[root@svn ~]# rz

[root@svn ~]# ls
git-2.22.0.tar.gz 

[root@svn ~]# tar xf git-2.22.0.tar.gz -C /usr/src
[root@svn ~]# cd /usr/src/git-2.22.0/
[root@svn git-2.22.0]# make configure
GIT_VERSION = 2.22.0
GEN configure
[root@svn git-2.22.0]# ./configure --prefix=/usr/local/git && make && make install

[root@svn git-2.22.0]# ln -sf /usr/local/git/bin/git /usr/bin/
[root@svn git-2.22.0]# git --version
git version 2.22.0

[root@svn git-2.22.0]# cd /etc/yum.repos.d/
[root@svn yum.repos.d]# ls
a Centos-7.repo docker-ce.repo local.repo
[root@svn yum.repos.d]# mv a/CentOS-Base.repo ./
[root@svn yum.repos.d]# cd

 安装git-svn支持程序

[root@svn~]# yum install subversion-perl perl-Digest-MD5 -y

 创建GIT工作目录并克隆SVN分支代码到本地

[root@svn ~]# mkdir /backup

[root@svn ~]# cd /backup/

将SVN服务器master分支代码克隆到本地GIT工作目录

[root@svn backup]# git svn clone --no-metadata svn://192.168.200.112/crushlinux/master/ /backup/master/

已初始化空的 Git 仓库于 /backup/master/.git/
Authentication realm: <svn://192.168.200.113:3690> e36c0e71-3ff5-4824-9f4b-11cd6b362309
Password for 'root':              #这是虚拟机密码
Authentication realm: <svn://192.168.200.113:3690> e36c0e71-3ff5-4824-9f4b-11cd6b362309
Username: manager           
Password for 'manager':

将SVN服务器dev分支代码克隆到本地GIT工作目录

[root@svn backup]# git svn clone --no-metadata svn://192.168.200.112/crushlinux/dev/ /backup/dev/

查看

[root@gitlab01 backup]# ls
dev        master       test

SVN代码迁移到GITlab的更多相关文章

  1. svn项目迁移至gitlab

    关于svn项目迁移有人可能会说,新建一个git项目,把原来的代码直接扔进去提交不完了吗.恩,是的,没错.但是为了保留之前的历史提交记录,还是得做下面的步骤 首先确保本地正常安装配置好git,具体步骤不 ...

  2. GitLab初识以及代码迁移

    目录 一.理论概述 1.什么是gitlib 2.GitLab服务构成 3.Git对比SVN 二.部署 1.简单操作GitLab 三.项目实践:SVN代码迁移至GitLab 环境 1.Linux下部署S ...

  3. SVN迁移到Gitlab实践经历

    svn 迁移至git操作手册 项目交付.版本管理工具变更等情况下,迁移svn旧历史记录有很大必要,方便后续追踪文件的提交历史,文件修改记录比对等.git自带了从svn迁移至git的工具命令,可很好的对 ...

  4. SVN项目迁移到Git上(并带有完整的提交记录)

    公司需求:早期的一些项目使用的是SVN,现在想要更换为Git,需要代码迁移并且能在Git上看到之前在SVN中的项目的提交记录,公司没有使用gitlab,代码都push在公司的服务器上,用的是Torto ...

  5. svn 版本迁移到 git 仓库

    1.拉取 svn代码并转成 git 版本 git svn fetch http://svn.qtz.com/svn/qtz_code/java/qtz_sm/project/qtz_sm -Auser ...

  6. 使用git svn clone迁移svn仓库

    使用git svn clone迁移svn仓库 clone命令可以指定很多参数,主要用到这些,你也可以使用git svn help查看完整的参数列表. git svn clone https://172 ...

  7. SVN如何迁移到Git?

    最近在使用华为软件开发云进行开发项目管理,目前华为软件开发云支持500M的免费项目空间,而且还可以在线编译和构建,不用担心开发环境和生产环境的不同,很好的体现了DevOps的开发理念. 之前一直是用s ...

  8. vue 代码迁移的坑

    由于开发需要,开发过程中总会遇到由于代码调试.svn/git上传等过程中,总会出现代码迁移文件的需求,很多时候,迁移过后总会出现一些大大小小的问题, 首先,需要迁移文件内有没有系统自动隐藏的文件(例如 ...

  9. github仓库迁移到gitlab以及gitlab仓库迁移到另一个gitlab服务器

    一. github仓库迁移到gitlab 先进入 new project: 选择 Import project, 选择下面的github: 进入后,这里需要github的 personal acces ...

随机推荐

  1. 区间无修改莫队学习笔记(lg1494小z的袜子)

    这几天感觉要学的要做的有点多,就偷了个懒没写笔记,赶紧补一下 莫队嘛,一个离线处理各种区间(或树上)询问的神奇算法 简单而言,按左端点排个序然后指针l,r递推就好了 复杂度证明貌似是不待修改的n^1. ...

  2. Java基本语法--运算符

    运算符是一种特殊的符号,用以表示数据的运算.赋值和比较等.本篇博客详细介绍Java基本语法中的运算符,主要包括算术运算符.赋值运算符.比较运算符(关系运算符).逻辑运算符.位运算符.三元运算符. Ja ...

  3. java 学习(day2) 时钟类

    看过python的面向对象,所以入手java总的来说还是比较快的. 看视频学习之后写了一个简单的时钟 一个时钟有两部分组成小时和分钟.再大一些还有月,日. 分析一下就是,上述这些属性到达一个值之后,就 ...

  4. python dataframe筛选列表的值转为list【常用】

    网上方法参差不齐,无注释解释不好秒懂,没有自己想要的,故自己试验一番~ 1. 筛选列表中,当b列中为’1’时,所有c的值,然后转为list 2 .筛选列表中,当a列中为'one',b列为'1'时,所有 ...

  5. navicat连接mysql查询结果中文都是?号(C#)

    记录解决方法,方便以后查看.  有几个地方需要注意: 1.连接mysql数据库的字符串最后加上Charset=utf8; 2.mysql中character_set_XX设置都为utf8,使用show ...

  6. Controller 和 Action -1

    https://www.cnblogs.com/willick/p/3331521.html MVC 的每个请求都会提交到 Controller 处理.Controller 包含了对请求的逻辑处理,能 ...

  7. Spring学习(六)

    AOP和OOP 1.OOP:Object-Oriented Programming,面向对象程序设计,是静态的,一旦类写死了就不能改变了,要更改就得修改代码重新编译,父类类型引用指向对象来实现动态性. ...

  8. 金蝶云星空使用WebAPI来新增单据

    有很多客户需求在后台自动生成某张单据,金蝶云星空提供了WebApi,包含了保存,提交,审核,删除单据的接口,下面以生产订单的保存,提交,审核为例,说明一下应用WebApi后台自动生成生产订单的功能,下 ...

  9. 训练20191005 2017-2018 ACM-ICPC Asia East Continent League Final

    A 签到 M 签到 K 读懂后签到 L 博弈论 [引理]出现SXXS结构时后手必胜. 很容易发现n为奇数时后手不可能胜利,n为偶数时先手不可能胜利.n≤6时一定平局,n≥7时先手有可能胜利,n≥16时 ...

  10. .net 文件接口的封装,写日志,创建文件log

    public class FileSupport { public static FileSupport Instance = new FileSupport(); public static str ...