管理员
   
论坛积分
分
威望 点
贡献值 个
金币 枚
|
一丶 SVN简介) l2 r3 G. y1 C& L5 K
SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。(ps:百度百科抄的 可忽略)+ i0 e, ?8 q* S5 i/ J" ]/ B" n; K
1.准备工作
" A$ ?7 E' B5 K5 v8 p" y8 H一台centos7 服务器 一台 客户端1 d/ t- n9 f" p( s" V- E
————————————————
' [) _ U+ ~, X" l1、验证是否安装了SVN
6 j# @* [" h9 U# s* Q$ g$ j6 s! L+ Z
# u8 k* |# `1 P, I0 O命令: # rpm -qa subversion; N1 Z9 n. R$ ]* S' x6 h
$ ^/ K t3 R# g7 d$ n% {& R如果安装了,输出对应的版本:subversion-1.6.11-15.el6_7.x86_64% p5 Y/ }# D, _1 K
& f/ Z7 q/ u6 Z1 p否则,空白
8 h: J9 e& |" t( E2 D2 z0 g
4 `/ t% | z) T6 y" L2、安装SVN的命令
6 A3 F/ x+ b0 |. }( H
! d2 A$ N. D, c+ m# yum -y install subversion
4 d8 F* z) H/ r& ~( Q, d
, Z3 n( j7 a$ Z" Q: n" U( F接下来使用# svnadmin create /home/svn/blog //其中blog为你的站点目录 /home/svn/为目录
8 M. t7 W( {6 O2 w' U- g# D9 |创建一个名为blog的svn版本库 ,进入blog目录 只要有以下目录就代表你的svn版本库搞好了' ]+ N; V: Y2 {& W
, p5 d+ w- X/ r9 O1 G& y然后我们进入‘blog’下的 conf目录 对svn进行配置,conf 下共有三个文件 authz 是对用户权限的配置 passwd是用户和密码的设置
0 \+ m4 x7 U7 o; s
) A8 i1 K" Y9 w6 P" @" \" Jsvnserve.conf是对使用的配置包括是否开启匿名上传 ,用户上传等(差不多就是那个意思)
! H% H$ [+ @5 m3 B& n- N) B/ g5 X& T: n2 c, |0 a
i2 i- J( Z* c, d; u首先我们对svnserve.conf 进行配置 把箭头处的两行 前的#去除 同时要注意前面不能要留空格
1 P' ~6 o, k+ d
& |2 {0 Z1 Y, z( V9 v# z4 N' K5 p# password-db = passwd& L% L, I9 H5 ]/ a, m
) c) l& i2 D4 q1 \; h$ n8 {
# authz-db = authz
6 d2 e7 f& L* g
5 t: q( I- j* [ v2 C' G) x& p# H$ N! y6 V1 t7 j& Z
然后编辑passwd 文件 写上自己要设置的账号和密码 注意前边不能有空格 并且不能有 #号 否则配置无效6 E( ~7 p' ^9 s' j: C9 {) a2 c
7 f' p) M6 V+ T9 C, c+ R( e% B
登录名=密码, W4 Z$ p6 U% W) w8 K
: C) P7 X+ Y8 w9 ^& Y, V1 luser=123456
/ ]- }7 E- A, t2 u4 ?" L- M0 K$ o7 f3 s }8 \' z8 Z( H7 o0 X4 _
& m/ k. U* g6 d& U最后编辑authz文件给让配置的账号设置权限(其中[blog:/] 设置的用户对blog下的所有文件都有设置的权限 r代表可读权限 w代表可写权限)6 f! K3 D, @1 E; v% Y' C
1 n+ ^& d. |& d
# * = r
: w* y6 a# V+ r8 e) `
& j# g1 H2 z; B9 q6 c[/]
2 k7 b, F+ n* @/ t2 a4 ?1 g3 Z0 z9 \( h$ B$ \3 _' m- S4 I/ U* W3 P
root=rw
; {/ J( j" x' z- }
: ~% r" m" B. x v7 \% W' F这是用户的配置就完成了' n8 f/ W8 ]) E0 W8 Z! V; p3 S; _
6 H$ o1 V( X9 I- u& V; {接下来我们就需要开启svn svnserve -d -r /home/svn/blog
7 R$ d1 j$ H( v5 C9 F$ h" Asvnserve -d --listen-prot 端口 -r /data/svn/ssyleo; {! ]( H" s# @5 ]' Y
9 x/ }* @/ J! Z# d5 W" E& [) e! q使用此命令开启svn 根据自己设置的目录自行更改
5 M- p" f9 Y; z( d* a5 o) `7 l1 S% a9 Z3 k7 I: t# [5 ], ]
使用netstat -nltp 命令 可以看到 svn的默认端口为3690 如果你是用的是阿里云服务器的话 还需要在安全组添加该端口,否则也会造成 客户端上传代码失败具体操作我在这里就不多讲了. j( H9 h9 X) D1 @( \
' R: k1 P. E U. ^. b" ?% V6 X( _* @5 ?2 U L
win下载svn工具
\3 q$ P) U! Z" g* {7 M8 m; e, i5 r2 B1 a6 ?7 {
接下来我们就需要在客户端做测试 这里我用的是我自己的电脑 svn客户端的下载链接https://tortoisesvn.net/downloads.html 打开后根据自己电脑配置选择不同的安装包 (安装完记得重启电脑)这里安装步骤不就不说了 一直下一步就行了/ O1 F7 d+ s+ s
& h# P9 [0 ]& h( E8 ` ?" `8 A3 }! u& z( Z& H$ D6 D
重启完电脑后 右击鼠标 点击SVN checkout (svn捡出)下载代码+ c' v" O% i5 d% `0 M
输入你的svn地址 地址请根据自己的设置自行更改
& N$ O6 `" J( L3 d( \+ D; j c# r$ q& B4 ], x$ K8 I& D& T) ^
( W/ n/ K& t; U. a3 I然后会弹出框让你输入你的账号和密码 输入后即可下载 服务器端的代码 你会发现文件夹里 只有一个.svn 如果没有的请将你的隐藏文件夹选项去掉这是你的svn 就搭建好了
' k: K' |1 z# z! h
7 c) [8 h2 V6 E2 w/ v
, l; a+ L6 ]! X. V* i( d0 v [8 R(svn客户端简单使用 svn update 更新代码 svn commit 提交代码)( v! ~& _9 A6 N
: h% z7 `2 ~+ z# |0 _1 `1 b
L7 o( ^/ F: a7 ^8 V: s0 A9 V& m* d- A% V+ {8 G' Q
可是这并不是我们想要的效果我们需要的是在web可以直接同步访问的所以我们要设置提交到svn的 代码能同步更新到web 根目录 svn 也是可以达到这种效果的 首先我们进入 web 根目录 这里我的跟目录在 /var/www/html/ 切换到 html目录下使用 svn co svn://192.168.1.35/blog 与网站根目录建立联系 同样的跟具体提示 输入自己设置的账号和密码并 输入yes设置保存
. p3 X" _: h$ R7 @( F6 y" W
1 s0 w6 n1 ?& V% G8 T) K$ [- P这时我们保存在版本库的代码就会被同步到网站根目录 G! g+ |& E9 s
& B/ ]2 m# f& R, l: [
% ]8 F) T$ I1 O+ i# {
8 ]- L B$ T! [6 F/ E9 r
( E7 i9 u. E- ^" `5 ~- j9 A# t5 s
+ @$ P5 k: K, D% m1 A$ ~! } |
|