linux下svn的使用
环境搭建:
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的使用的更多相关文章
- linux下svn 搭建
linux 下SVN搭建加自动提交更新到指定目录一.安装#yum install subversion yum安装SVN#mkdir -p /opt/svn/repos 创建s ...
- linux下svn命令使用大全
最近经常使用svn进行代码管理,这些命令老是记不住,得经常上网查,终于找了一个linux下svn命令使用大全:1.将文件checkout到本地目录 svn checkout path(path是服务器 ...
- linux下SVN忽略文件/文件夹的方法
linux下SVN忽略文件/文件夹的方法 假设想忽略文件temp 1. cd到temp所在的目录下: 2. svn propedit svn:ignore . 注意:请别漏掉最后的点(.表示当前目录) ...
- Linux下SVN命令
一下内容转载于:http://blog.chinaunix.net/space.php?uid=22976768&do=blog&id=1640924.这个总结的很好~ windows ...
- Linux下svn命令详解
本文主要是说明linux下svn命令的使用方法,同时记录自己在使用中遇到的一些疑惑. 1.Linux命令行下将文件checkout到本地目录 svn checkout url(url是服务器上的目录) ...
- linux下svn命令大全
linux下svn命令大全 1.将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/p ...
- linux下svn常用指令
windows下的TortoiseSVN是资源管理器的一个插件,以覆盖图标表示文件状态,几乎所以命令都有图形界面支持,比较好用,这里就不多说.主要说说linux下svn的使用,因为linux下大部分的 ...
- [转载]linux下svn常用指令
一下内容转载于:http://blog.chinaunix.net/space.php?uid=22976768&do=blog&id=1640924.这个总结的很好~ windows ...
- Linux下SVN服务器安装配置及客户端安装说明
原文地址:http://wenku.baidu.com/link?url=h3dVAMx4azpOXEND5HQEE6nliE8-zc0GSQ03yv4cUs1vXMALXF64UsK7kT7kXm_ ...
- Linux下SVN的一些使用方法总结
Linux下SVN的一些使用方法总结 近期的一个项目不方便 Check 到本地,需要在测试服务器上进行编写和测试,所以就研究了一下如何在 Linux 命令行下使用 SVN. 首先 svn help ...
随机推荐
- SQL Server跨服务器操作数据库
今天给大家来分享一下跨服务器操作数据库,还是以SQL Server的管理工具(SSMS)为平台进行操作. 什么是跨服务器操作? 跨服务器操作就是可以在本地连接到远程服务器上的数据库,可以在对方的数据库 ...
- Jmeter3.1 使用及新增报告功能
一.JMeter官网 下载地址http://jmeter.apache.org/download_jmeter.cgi Jmeter wikihttps://wiki.apache.org/jmete ...
- 微服务架构下使用Spring Cloud Zuul作为网关将多个微服务整合到一个Swagger服务上
注意: 如果你正在研究微服务,那必然少不了服务之间的相互调用,哪么服务之间的接口以及api就必须生成系统的管理文档了.如果你希望更好的管理你的API,你希望有一个工具能一站式地解决API相关的所有事情 ...
- LeetCode 131. 分割回文串(Palindrome Partitioning)
131. 分割回文串 131. Palindrome Partitioning 题目描述 给定一个字符串 s,将 s 分割成一些子串,使每个子串都是回文串. 返回 s 所有可能的分割方案. LeetC ...
- ScheduledExecutorService调度线程池运行几次后停止某一个线程
开发中偶尔会碰到一些轮询需求,比如我碰到的和银行对接,在做完某一个业务后银行没有同步给到结果,这时候就需要查询返回结果,我们的需求是5分钟一次,查询3次,3次过后如果没有结果则T+1等银行的文件,对于 ...
- SpringMVC笔记1
SpringMVC是一个一种基于Java的实现MVC设计模型的请求驱动类型的轻量级web框架 SpringMVC的入门案例 2.导入相关jar包 <?xml version="1.0& ...
- Python-11-生成器
一.定义 可以理解为一种数据类型,这种数据类型自动实现了迭代器协议(其他数据类型需要调用__iter__方法),所以生成器就是一种迭代器. 二.生成器的两种形式 1. 生成器函数 使用yield代替r ...
- Numpy学习笔记(下篇)
目录 Numpy学习笔记(下篇) 一.Numpy数组的合并与分割操作 1.合并操作 2.分割操作 二.Numpy中的矩阵运算 1.Universal Function 2.矩阵运算 3.向量和矩阵运算 ...
- HTML5单页框架View.js介绍
什么是单页应用单页应用,是指将用户视觉上的多个页面在技术上使用一个载体来实现的应用. 换句话来讲,用户视觉效果,与技术实现的载体,并不是一定要一一对应的.采取哪种技术方案,取决于产品设计.技术组成以及 ...
- 【转】webpack4安装过程遇到的问题及处理方法
随便百度一下,安装使用webpack的教程铺天盖地,安装一步步来,最后的最后打包没反应......,浪费了不少的时间. 这里我要提醒一下,如果安装webpack1,2,3按照百度上的教程应该不会有问题 ...