centos搭建svn
http://subversion.tigris.org/
http://subversion.apache.org
svn客户端
http://tortoisesvn.net
svn中文网站
http://www.iusesvn.com
中文常见问题解答AQ
http://subversion.apache.org/faq.zh.html
官方手册
http://svnbook.red-bean.com/ 中英文都有
svn 服务端运行方式(3种)
1.独立服务器访问
访问地址如: svn://svn.etiantian.org/sadoc
2.借助apache等http服务
a.单独安装 apache+svn(不要用)。坑多
b.CSVN(apache+svn)是一个单独整合的软件,带web界面管理的SVN软件。
3.本地直接访问(file://application/svndata/sadoc/)
4.SVN客户端访问方式
5.搭建SVN
yum install -y subversion
rpm -qa subversion 查看版本
卸载svn
rpm -e --nodeps 版本号
6.创建svn数据存储目录
mkdir -p /application/svndata
7.创建用户,密码,权限目录
mkdir -p /application/svnpasswd
8.创建一个项目的目录
svnadmin create /application/svndata/sadoc
9.cd /application/svndata/sadoc/conf
备份svnserve.conf配置文件。
cp svnserve.conf svnserve.conf.ori
vim svnserve.conf
10.对比两个配置文件,更改前后
vimdiff svnserve.conf.ori svnserve.conf 不保存退出。
11配置权限和密码
mv authz passwd /application/svnpasswd/
12.查看svnserve 帮助。
13.启动svn,看到3690端口说明启动成功。
svnserve -d -r /application/svndata
14.杀掉svn进程
pkill svnserve
15.配置用户名和密码
cd /application/svnpasswd
vim passwd
[users]
oldboy26 = stu001,stu002
david = david123
bella = bella123
stu001 = 123
stu002 = 456
16.授权
vim authz
oldboy26 = stu001,stu002
[sadoc:/] ##sadoc:/为项目的根
david = rw
bella = r
@oldboy26 = r
=====至此服务端配置完毕。
17.在客户端创建目录 sadoc (window下管理)
我的电脑-D盘,新建文件夹 sadoc
svn客户端安装教程window版:
https://www.cnblogs.com/ygj0930/p/6623148.html
18.右键 选择文件夹sadoc选择svn checkout
填写svn地址:
svn://111.230.129.198/sadoc
不保存密码。
如出现下面界面则为成功了。
18.SVN目录与权限管理
创建如下目录与文件
SVN -Commit 提交更新
19.svn 预览,输入用户名和密码,可以看到服务端文件被提交成功。
20.细分权限,stu001只管理stu001目录,stu002只管理stu002目录。
[sadoc:/stu001]
david = rw
stu001 = rw
[sadoc:/stu002]
david = rw
stu002 = rw
新建一个txt ,用stu002提交,不同用户管理不同目录。实验成功。
21.svn 批量引入目录
svn import /tmp/dir/ svn://111.230.129.198/sadoc/ -m "import svntree"
- svn 客户端管理(linux)
另外一台linux 服务器
yum install -y subversion
mkdir -p /home/svntest
cd /home/svntest
svn checkout svn://111.230.129.198/sadoc --username=david --passwd=david123
这样就可以把服务器的目录下载更新下来。
23.提交
mkdir stu{011..020}
更新到服务器端
svn add *
提交 -m 里面是提交的标签 的意思
svn ci -m "david"
清除已保存的用户和密码,切换用户用
24.svn钩子技术应用详解
钩子目录。
钩子 脚本触发注意事项。
SVN服务器端新建一个文件夹 backup
mkdir backup
同步svn里的目录到backup
svn checkout file:///application/svndata/sadoc/ /backup
服务端,做一个钩子
cd /application/svndata/sadoc/hooks/
cp post-commit.tmpl post-commit
给权限
chmod 755 post-commit
编辑钩子脚本
vim post-commit
export LANG=en_US.UTF-8
LOGPATH="/app/log"
[! -d ${LOGPATH} ] && mkdir &{LOGPATH} -p
SVN=/usr/bin/svn
$SVN update --username david --passwd david123 /backup
if [ $? -eq 0 ]
then
rsync -avz /backup/ ::backup/ --passwd-file=/etc/rsync.password
fi
==============================(上面脚本只做了解,生产中不建议使用)
25.SVN 的备份
把svndata 目录备份
tar -cvf svndata.tar.gz svndata
26.大中型企业级代码发布上线详细原理流程。