环境搭建:

  yum install subversion       yum安装svn服务

  svn --version  检查是否安装

  cd /usr/local/svn/conf  找到conf 文件

  mkdir -p /var/svn/svnrepos   svn版本创建目录

svnadmin create /var/svn/svnrepos/test   首先创建一个测试版本库test

  cd /var/svn/repos/test/conf

  vi authz  打开文件在最下面加入配置,authz文件负责账号权限的管理,控制账号是否读写权限

dev=rainbol1             //表示设置组
test=rainbol2
ops=rainbol3
[/] //指定根目录先的权限
@test = rw //设置test组的权限为可读可写
@dev = rw
@ops = r

  vi passwd  接着打开第二个文件在最下面加入配置,passwd文件负责账号和密码的用户名单管理

//用户名就是组添加成员是的用户名,密码为helloworld1
rainbol1 = helloworld1
rainbol2 = helloworld2
rainbol3 = helloworld3

  vi conf/svnserve.conf  打开第三个文件在打开下方红框中的配置即可,svnserve.conf文件负责svn服务器配置文件

运行:

  svnserve -d -r <your path>  -d表示后台运行,-r /path 指定目录启动

  如:svnserve -d -r /var/svn/svnrepos --listen-port 3691  后面加参数可以设置自定义端口号,默认端口是3690

注意:注释打开要顶格,不要留有空格,不然会报错

使用常用命令大全:

  作为存储代码的svn服务器:(上述操作)

    进程一直开着就行了,不用管

  作为项目版本控制服务器:

    从svn服务器拉取代码:

 svn co <svn服务器路径> --username <your username> --password <your password>

    往svn服务器添加文件:

svn add <your file load>

    将改动的文件提交到版本库:

svn ci -m “<LogMessage>“ <-N> <--no-unlock> <your PATH>

    为文件加锁,解锁

svn lock -m "<lockmessage>" <--force> <your path> #加锁
svn unlock <your path> #解锁

    到某个版本(回档)

svn up  -r <your version number> <your path>

    信息查看

svn info
svn log
svn list

svn结合jenkins:

jenkins安装跳过

1.新建一个项目在general中选择使用自定义的工作目录,目录为项目目录,设置一个名称

2.点击高级->源码管理->选择Subversion->Repository URL为svn服务器路径,其他默认就好了

3.构建触发器->选择定时构建->添加日程表,根据自己的业务需要选择执行时间

4.构建->执行shell->在linux的root目录,建立shell脚本执行

5.构建后操作->也一样对构建后执行shell脚本

扩展:业务场景(公司使用svn服务器管理代码,测试人员拉取svn服务器不同项目的代码到测试服务器或本地进行测试,期间应用了CI结合svn实现判断不同项目目录执行不同jenkins_curl请求)

#!/bin/sh

REPOS="$1"                  # 仓库的路径
REV="$2" # 新提交的版本号 SVNLOOK=/usr/bin/svnlook CHANGEDDIRS=$($SVNLOOK dirs-changed $REPOS) #修改的目录集合
MASTERDIR=$(echo "$CHANGEDDIRS" | head -) #CHANGEDDIRS里的主目录
MASTERDIR=${MASTERDIR%%/*}
# 遍历提交的代码目录,同步到WEB服务器上,根据业务情况,暂时没用上
# PROJECT=$(echo $MASTERDIR | awk -F / '{print $2}') # 判断项目文件夹,MASTERDIR返回'project'if [ "$MASTERDIR" == "project1" ];then
curl -X POST -v -u ....
elif [ "$MASTERDIR" == "project2" ];then
curl -X POST -v -u ....
elif [ "$MASTERDIR" == "project3" ];then
curl -X POST -v -u ....
elif [ "$MASTERDIR" == "project4" ];then
curl -X POST -v -u ....
elif [ "$MASTERDIR" == "project5"];then
echo 'pass'
fi

jenkins的url配置查看https://www.cnblogs.com/RainBol/p/10980890.html

测试成功,可以触发钩子程序

版权声明:本文原创发表于 博客园,作者为 RainBol本文欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则视为侵权。

linux下svn的使用的更多相关文章

  1. linux下svn 搭建

    linux 下SVN搭建加自动提交更新到指定目录一.安装#yum install subversion       yum安装SVN#mkdir -p /opt/svn/repos       创建s ...

  2. linux下svn命令使用大全

    最近经常使用svn进行代码管理,这些命令老是记不住,得经常上网查,终于找了一个linux下svn命令使用大全:1.将文件checkout到本地目录 svn checkout path(path是服务器 ...

  3. linux下SVN忽略文件/文件夹的方法

    linux下SVN忽略文件/文件夹的方法 假设想忽略文件temp 1. cd到temp所在的目录下: 2. svn propedit svn:ignore . 注意:请别漏掉最后的点(.表示当前目录) ...

  4. Linux下SVN命令

    一下内容转载于:http://blog.chinaunix.net/space.php?uid=22976768&do=blog&id=1640924.这个总结的很好~ windows ...

  5. Linux下svn命令详解

    本文主要是说明linux下svn命令的使用方法,同时记录自己在使用中遇到的一些疑惑. 1.Linux命令行下将文件checkout到本地目录 svn checkout url(url是服务器上的目录) ...

  6. linux下svn命令大全

    linux下svn命令大全 1.将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/p ...

  7. linux下svn常用指令

    windows下的TortoiseSVN是资源管理器的一个插件,以覆盖图标表示文件状态,几乎所以命令都有图形界面支持,比较好用,这里就不多说.主要说说linux下svn的使用,因为linux下大部分的 ...

  8. [转载]linux下svn常用指令

    一下内容转载于:http://blog.chinaunix.net/space.php?uid=22976768&do=blog&id=1640924.这个总结的很好~ windows ...

  9. Linux下SVN服务器安装配置及客户端安装说明

    原文地址:http://wenku.baidu.com/link?url=h3dVAMx4azpOXEND5HQEE6nliE8-zc0GSQ03yv4cUs1vXMALXF64UsK7kT7kXm_ ...

  10. Linux下SVN的一些使用方法总结

    Linux下SVN的一些使用方法总结   近期的一个项目不方便 Check 到本地,需要在测试服务器上进行编写和测试,所以就研究了一下如何在 Linux 命令行下使用 SVN. 首先 svn help ...

随机推荐

  1. Django:前后端分离 djangorestframework开发API接口 serializer序列化认证组件

    参考:https://blog.csdn.net/zhangmengran/article/details/84887206 目的: 使用serializer序列化器将QuerySet数据序列化为js ...

  2. 【Python学习之十】操作数据库

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 python3.6 操作mysql数据库 1.安装pymysql模块p ...

  3. LeetCode 201. 数字范围按位与(Bitwise AND of Numbers Range)

    201. 数字范围按位与 201. Bitwise AND of Numbers Range 题目描述 给定范围 [m, n],其中 0 <= m <= n <= 214748364 ...

  4. LeetCode 1051. 高度检查器(Height Checker) 28

    1051. 高度检查器 1051. Height Checker 题目描述 学校在拍年度纪念照时,一般要求学生按照 非递减 的高度顺序排列. 请你返回至少有多少个学生没有站在正确位置数量.该人数指的是 ...

  5. SQL——AND、OR运算符

    一.AND.OR运算符基本说明 AND : 所有条件成立,则筛选出这条记录. OR : 只要其中一个条件成立,则筛选出这条记录. 演示student表: 二.AND运算符使用 查询name = '小明 ...

  6. 39 多线程(十一)——ThreadLocal

    目前阶段,我只能知其然,不能做到知其所以然,这里引用一篇其所以然的文章,为以后理解ThreadLocal做准备: https://www.cnblogs.com/ldq2016/p/9041856.h ...

  7. 登陆并访问k8s的apiserver

    kubeadm安装的k8s集群默认需要用户登陆认证,无法直接使用命令curl访问.所以首先的第一步就是获取token. 先找到k8s集群中的dns组件coredns,之前的版本使用的是kube-dns ...

  8. [NOI2008]志愿者招募 (费用流)

    大意: $n$天, 第$i$天要$a_i$个志愿者. $m$种志愿者, 每种无限多, 第$i$种工作时间$[s_i,t_i]$花费$c_i$, 求最少花费. 源点$S$连第一天, 容量$INF$ 第$ ...

  9. GC偏好

    GC偏好 测序中的GC偏好指的是基因组上GC含量在50%左右的区域更容易被测到,产生的reads更多,这些区域的覆盖度更高, 在高GC或者低GC区域,不容易被测到,产生较少的reads,这些区域的覆盖 ...

  10. java List分组和排序处理

    在一些应用中,需要将List中的对象按某种情况分组或者排序处理.做个小结如下: 1. 如一个List中存放了ProductDoing对象,productDoing对象有rawTypeId 现在要求将r ...