Linux上搭建SVN服务
环境:centos7
一、搭建svn服务
1. 安装svn
yum -y install subversion
2. 创建一个目录作为svn服务的地址(svn://192.168.0.2:3690 访问的目录,作为所有仓库的根目录)
mkdir /home/svn
3. 在svn目录下为一个需要版本控制的项目创建仓库,一个svn服务可以有多个仓库
svnadmin create /home/svn/tp5
tp5目录下不要直接添加,删除,随意修改文件,要使用svn客户端操作。否则仓库可能报废
4. 为项目配置用户和权限
cd /home/svn/tp5/conf
(1)设置访问的用户和密码
vim passwd #加入如下代码:
[users] #表示访问svn服务根目录
user1 = 1234 #创建了2个用户及密码
user2 = 123
(2)设置用户的权限(可分组)
vim authz 加入如下代码:
[/] #仓库的权限
user1 = rw #可读可写
user2 = r #只读
*= #其它用户没有任何权限
或分组给权限:
[group]
group1 = user1,user2 #group1组里有2个用户:user1,user2
[/] #访问根目录的权限
@group1 = rw #这样user1和user2都有rw权限
5. 在服务配置文件中引入设置
vim svnserve.conf #加入如下代码
[general]
auth-access = write #授权用户访问仓库的权限。值有3个:none read write ,write代表可读可写
anon-access = read #匿名用户只读
password-db = passwd #使用的密码文件
authz-db = authz #使用的授权文件
realm = /home/svn/tp5 #仓库根目录
6. 启动配置好的SVN服务
svnserve -d -r /home/svn # -d 以守护进程启动 -r 仓库目录
二、svn客户端使用(win10)
1. 下载客户端工具tortoiseSVN https://tortoisesvn.net/downloads.html
2. 从仓库检出代码
3. 编写核心代码并更新到仓库
三、linux上svn常用命令
1. svn checkout svn://xxx 或 svn co svn://xxx
2. svn add filename #往版本库添加新的文件
3. svn commit -m “提交描述信息“ [-N] [--no-unlock] file1 file2 简写 svn ci #将改动的文件提交到版本库
4. svn lock -m “lock test file“ test.php #加锁
5. svn unlock test.php #解锁
6. svn delete path -m “delete test fle” 简写 svn rm
7. svn status -v path #path是项目工作根目录
8. svn log path #查看项目的日志
9. svn info filename #查看文件详细信息
10. svn diff filename #将修改的文件和基础版比较差异
11. svn diff -r m:n filename # 比较文件在m版和n版的差异
12 . svn list path 简写 svn ls #列出path目录下所有属于版本库的文件和目录
三、创建钩子脚本使web目录项目与仓库代码同步
1. 在web目录下检出项目
svn checkout svn://localhost/tp5 #回车后要输入linux用户密码,svn用户名和密码
2. 在svn仓库下,hooks目录下创建钩子脚本
cd /home/svn/tp5j/hooks
cp post-commit.temp post-commit
chmod 775 post-commit
vim post-commit #加入如下代码:
#!/bin/sh
export LANG=en_US.UTF8 #设置文件导出的编码方式
SVN=/usr/bin/svn #svn命令的路径
WEB=/usr/local/nginx/www/tp5 #项目路径
$SVN update $WEB --username xiaobao --password 1234 #执行更新操作
并注释掉原来文件中的代码。这样每次提交代码到仓库后,web目录下的项目会自动执行更新操作
Linux上搭建SVN服务的更多相关文章
- linux上搭建svn
参照网址:http://www.cnblogs.com/LusYoHo/p/6056377.html(如何在linux下搭建svn服务) http://www.cnblo ...
- Linux环境搭建SVN服务
一.准备工作 首先要保证自己的linux电脑能上外网,我这电脑因为是新的,没有配置网络,所以再这块花费了点时间. 1.检查ip信息 >ifconfig 2.检查DNS服务器 >cat / ...
- 如何在linux下搭建svn服务
• 安装svn 使用命令 yum install subversion 如果提示上述错误,请以管理员身份运行 使用命令su root 再执行 yum install subversion 2,查看sv ...
- Linux下搭建svn服务端
安装 使用yum安装非常简单: yum -y install subversion (压缩包安装比这麻烦的多) Tortoise本是window下客户端工具,但也可以建仓库,作为服务端.Linux只有 ...
- JAVAEE——宜立方商城07:Linux上搭建Solr服务、数据库导入索引库、搜索功能的实现
1. 学习计划 1.Solr服务搭建 2.Solrj使用测试 3.把数据库中的数据导入索引库 4.搜索功能的实现 2. Solr服务搭建 2.1. Solr的环境 Solr是java开发. 需要安装j ...
- 在Linux上安装SVN服务
1.安装SVNyum install subversion 2.查看版本svnserve --version3.创建目录mkdir -p /web/svndata3.创建repo测试库svnadmin ...
- Linux上搭建svn资源库
一.安装 centos上安装 使用命令svn --version查看是否安装过svn: 如果出现 bash: svn: command not found 则显示没有安装 可以使用 yum in ...
- 在linux上搭建SVN服务器并自动更新至WEB目录
1.仓库放在 /var/svn/ 目录下,并且仓库名为 project 2.创建用户组user,该组下添加两个成员user1.user2,密码直接用用户名,两用户可以checkout代码和提交代码 3 ...
- linux 上搭建sftp服务
原文链接:https://www.cnblogs.com/yanduanduan/p/9046723.html sftp和ftp的区别 FTP是一种文件传输协议,一般是为了方便数据共享的.包括一个FT ...
随机推荐
- matlab的clc,close,close all,clear,clear all命令
clc:清除命令窗口的内容,对工作环境中的全部变量无任何影响 close:关闭当前的Figure窗口 close all:关闭所有的Figure窗口 clear:清除工作空间的所有变量 clear a ...
- [LeetCode] 296. Best Meeting Point 最佳开会地点
A group of two or more people wants to meet and minimize the total travel distance. You are given a ...
- 【Arch安装】
[Arch安装]不完整,凭记忆补充 1,制作安装介质(请跳转链接:https://www.archlinux.org/download/) 2,从UEFI模式启动后,按照官方WIKI向导操作(http ...
- idea插件篇之java内存分析工具(JProfiler)
前言在运行java的时候有时候想测试云运行时占用内存情况,这时候就需要使用测试工具查看了.在eclipse里面有 Eclipse Memory Analyzer tool(MAT)插件可以测试,而在i ...
- PLSQL安装过程和SCOTT用户被锁的解决方法
一.PLSQL安装: PLSQL基本就是一键式安装,没有什么需要修改的东西,一路Next就行了. 二.SCOTT用户被锁问题解决 1.问题如下: SCOTT用户默认是被锁的,需要通过system管理员 ...
- Postman测试后台使用@RequestBody接收参数的坑
问题原因:我在使用PostMan测试接口时发现数据传递不过来,是因为请求体定义为JSON数据,自动就传递不过来,虽然问题简单,但由于之前这个用的较少,所以就忽略了这点. 解决问题链接:https:// ...
- Kubernetes ingress 上传文件大小限制
1.文件太大 413:Request Entity Too Large 创建 ingress 时添加 annotations(注释) metadata: annotations: nginx.ingr ...
- PYTHON的ASCII码转换
首先,我们要知道ASCII的ord 这个变值,附上代码: c=input("请输入一个字符:") print (c+"的ASCII码为 ".ord(c)) #用 ...
- layui 动态表格设置单元格样式
col.push({ field: , templet: function (d) { ") { return '<span style="color:white;backg ...
- ActionMq + mqttws3.1 实现持久化订阅
activemq版本:5.15.3 Eclipse Paho MQTT JavaScript library mqttws3.1:在amq安装目录下webapp-demo目录下可以找到 实现步骤请阅读 ...