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 ...
随机推荐
- 使用nio实现web服务器
package com.nio; import java.io.IOException; import java.net.InetAddress; import java.net.InetSocket ...
- C++const关键字用法
const关键字是C++新引进的关键字,目标是用于定义常量,避免C语言中使用宏定义出现的边际问题,并且const是类型安全的,即const定义的是不可修改值的变量,它是有类型的,但是宏替换只是简单的进 ...
- MyBatis Geneator详解<转>
MyBatis Geneator中文文档地址: http://generator.sturgeon.mopaas.com/ 该中文文档由于尽可能和原文内容一致,所以有些地方如果不熟悉,看中文版的文档的 ...
- fastjson常用操作
一. fastjson生成json字符串(JavaBean,List<JavaBean>,List<String>,List<Map<String,Object&g ...
- IIS故障问题(Connections_Refused)分析及处理【转】
这篇文章其实已经写好很久,只是后来一直没有重现当时的问题,或者因为业务的重要性.投诉的压力也就临时处理了.这几天某地市Web服务器连续多次出现这个问题,正好借这个案例来做个收尾. 前几个月有台重要的W ...
- 正向工程、逆向工程与MDA
正向工程.逆向工程与MDA 正向工程:从UML图形生成代码: 逆向工程:从代码和成UML图形: //不要依赖于正向或逆向工程,仅是一种辅助手段.画图的目的不是为了生成代码:而写代码的目的也不是为了生成 ...
- 游戏开发之coco2dx ---2d 游戏特效
http://www.cnblogs.com/gamedes/p/4547722.html
- c# http请求,获取非200时的响应体
HttpWebResponse res = null; try { res = request.GetResponse() as HttpWebResponse; } catch (WebExcept ...
- db2 import和load
Import和Load 都可以将数据导入到DB2服务器中,但是2者是有很大区别的. Import 其实执行了SQL 的INSERT 操作.和INSERT 操作一样,Import 执行的时候会激活触发器 ...
- LoadRunner压力测试心得总结
一.虚拟用户迭代一次的时间对整个压力场景的影响. 1.虚拟用户迭代一次的时间大于等于压力场景的上行周期. 此种情况,在压力场景的上行周期中,所有虚拟用户根据压力场景设置的策略全部依次运行.压力场景的上 ...