svn搭建(linux下)
安装svn:
依赖包: yum install openssl openssl-devel
问题(可以忽略不计):configure: WARNING: we have configured without BDB filesystem support
1.下载安装包(一般我放到/usr/local/src/package/目录下面):
wget http://subversion.tigris.org/downloads/subversion-1.6.1.tar.gz
wget http://subversion.tigris.org/downloads/subversion-deps-1.6.1.tar.gz
2.解压下载好的两个文件(两个解压到一个目录,无需创建两个目录)
tar -zxvf subversion-1.6.1.tar.gz
tar -zxvf subversion-deps-1.6.1.tar.gz
3.进入解压目录:cd subversion-1.6.1/
4.编译安装:./configure --prefix=/usr/local/svn make && make install
5.安装成功后获取一下svn的版本信息:/usr/local/svn/bin/svnserve --version
6.将svn的bin目录加到环境变量中去:
PATH=$PATH:/usr/local/svn/bin
export PATH
7.建立一个svn的根目录,项目不止一个:
mkdir -p /home/zgw/www/(这里随你,可以建成/home/www/)
8.建立仓库:
svnadmin create /home/zgw/www/repos/
9.递归导入工程到版本库:
svn import svntest file:///home/zgw/www/repos -m "Initial repository test"
10.修改svnserve.conf(在仓库目录下面的conf目录下面/home/zgw/www/repos/conf):
[general]
anon-access = none(一开始是read,改成none)
auth-access = write
password-db = passwd(去掉前面注释,去读取passwd文件的账户信息)
authz-db = authz(去掉前面的注释,去读取authz文件的配置信息)
realm = /home/zgw/www/repos(认证空间)
11.目录控制文件authz:
[groups]
admin=zgw(创建一个admin组,并指定某些用户为该组的组员)
[repos:/](制定目录下的权限)
@admin = rw(admin组的用户权限)
* = r(其他人的权限)
12.编辑用户密码passwd文件:
[users]
zgw = 123456(指定用户zgw的密码是123456)
13.启动svn(因为可能有多个项目,所以就启动多版本,如果是单一版本):
多版本:svnserve -d -r /home/zgw/www
单一版本:svnserve -d -r /home/zgw/www/版本控制器名称
14.检出代码:比如项目目录lift(检出svn的代码到项目目录)
cd /home/zgw/www/lift/
svn co svn://127.0.0.1/repos ./ --username zgw(zgw是svn账户)
15.编辑钩子(zgw是svn账户)
cd /home/zgw/www/repos/(svn目录版本目录)
touch post-commit
将一下内容编辑到post-commit中:
#!/bin/bash
export LANG="zh_CN.UTF-8"
/usr/local/svn/bin/svn update /home/zgw/www/lift/ --username zgw --password 123456
(这里注意一下:如果写错svn update /home....会报错:提示找不到svn命令,这时候直接找到svn安装目录下的bin目录下有个svn的二进制文件,直接使用pwd获取路径写到post-commit文件--标红的就是)
修改权限:chmod 777 /home/zgw/www/repos/hooks/post-commit
16.启动svn:
svnserve -d -r /home/data/svn/
其中 -d 表示守护进程, -r 表示在后台执行
/home/data/svn/ 为svn的版本控制目录
17.关闭svn:
这里采取linux杀死进程的方式处理的
ps -ef|grep svnserve
root 4967 1 0 Aug23 ? 00:00:00 svnserve -d -r repository/
这里 kill -9 4967杀死进程, 此4967为进程号
svn搭建(linux下)的更多相关文章
- 【SVN】Linux下svn搭建配置全过程——初学者轻松上手篇
版本控制主要用到的是git和svn,其中svn界面化使用操作简单,本篇简单介绍SVN搭建配置全过程. 1. 下载并安装 yum install subversion 查看版本 svnserve --v ...
- 搭建Linux下的SVN服务器
______________________________________________配置SVN步骤______________________________________________ ...
- svn 在linux 下的一些常用命令
最近在Linux系统下玩一些svn的东西,感觉脑袋很乱, 于是整理了一下一些初学者必须弄明白的基本命令: 1. svn --version: 查看Linux系统下的svn client版本. Clie ...
- 搭建 Linux 下 GitLab 服务器
转自:http://blog.csdn.net/passion_wu128/article/details/8216086 目录: 平台需求 硬件需求 本安装指南已于 DebianUbuntu 测试通 ...
- svn之——linux下清除svn的用户名和密码
问题:之前用的svn账号权限不够,需要使用别的账号,所以提出需求——怎么使用新的svn账号进行操作 方法一: linux下删除~/.subversion/auth即可清除之前的用户名和密码:rm -r ...
- 搭建 Linux 下 GitLab 服务器(转)
这两天因为项目需求需要搭建一个GitLab服务器,遇到了很多问题,参考了很多网络资料,终于搭建成功,在此把这个过程记录一下,利人利己. 一.最终目的 1,在Linux下创建GitLab服务器,客户端能 ...
- Linux系统下LNMP一键搭建Linux、PHP、MySQL环境(适合新手搭建linux下的web生成环境)
一. 首先要解释一下,什么是LNMP,LNMP起源于LAMP,LAMP是Linux+Apache+Mysql/MariaDB+Perl/PHP/Python的缩写,这里将Web服务端的Apache替换 ...
- 搭建 Linux 下 GitLab 服务器【转】
转自:http://blog.csdn.net/passion_wu128/article/details/8216086 版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[-] 平台 ...
- SVN:linux下搭建svn服务器
转载:https://www.cnblogs.com/puloieswind/p/5856326.html 1. 安装SVN服务器: 检查是否已安装 # rpm -qa subversion 安装SV ...
随机推荐
- 从constructor中抛出exception后,constructor会返回null吗?
刚才琢磨这个问题主要是在想,如果constructor抛出了exception,那么返回的object是什么一个情况呢?如果我这个object中有一些关键的资源没有初始化,比如说Database co ...
- mybatis、ibatis 和spring集成
mybatis是ibatis的升级版,spring也有自带mybatis的orm.所以,搭建ibatis的框架也会有多种方式(我这里mybatis是3.0的,ibatis是2.3的,spring是3. ...
- per-cpu
What is percpu data? percpu data 是内核为smp系统中不同CPU之间的数据保护方式,系统为每个CPU维护一段私有的空间,在这段空间中的数据只有这个CPU能访问.但是这种 ...
- 示例 - 如何在Console应用程序中应用SpiderStudio生成的DLL?
以前面生成的XML/JSON互转DLL为例, 我们写一个Console Appliction来做这件事情, 步骤如下: 1. 创建Console Project 2. 引入www.utilities_ ...
- php接入域账号登陆代码
php接入域账号登陆代码 //替换本地登录为AD域用户认证//edit by ZhangJin on 2015-05-23 -START-$dn = $user_account.'@fun ...
- 关于Unity的C#基础学习(一)
一.程序包含 1.数据:运行过程中产生的 2.代码:代码指令 数据和代码都是存放到内存中的,代码指令在程序加载的时候放到内存,数据是在程序运行的时候在内存中动态地生成,随时会被回收,要定义变量来存放数 ...
- JAVA会将所有的错误封装成为一个对象,其根本父类为Throwable
JAVA会将所有的错误封装成为一个对象,其根本父类为Throwable. Throwable有两个子类:Error和Exception. 一个Error对象表示一个程序错误,指的是底层的.低级的.不可 ...
- ERROR: openstack Error finding address for http://10.16.37.215:9292/v1/images: [Errno 32] Broken pipe
Try to set: no_proxy=10.16.37.215 this should help 转自: http://askubuntu.com/questions/575938/error-i ...
- java.lang.ClassNotFoundException: org.codehaus.jackson.JsonProcessingException 异常解决方案
在SpringMVC中使用Jackson实现json输出时配置如下: <!-- 输出对象转JSON支持 --> <bean id="stringConverter" ...
- 安装wampserver时提示丢失MSVCR110.dll
安装Wampserver 2后启动的时候提示系统错误:MSVCR110.dll丢失. 在wampserver官网上有例如以下提示: 于是卸载原来的WAMPSERVER 2 ,在http://www.m ...